Подтвердить что ты не робот

Как я могу сделать сообщения git commit делятся на несколько строк?

Когда я использую git log, чтобы проверить пояснения к моей команде, например

1. what I changed
2. blank line
3. why I changed it

в 3 строках не нравится 1. what i changed 2. blank line 3. why i changed только в 1 строке.

4b9b3361

Ответ 1

Вы используете только следующую команду:

$ git commit -m "1. what i changed
> 2. blank line
> 3. why i changed"

В вашем терминале просто нажмите 'enter' для новой строки. Сообщение о фиксации не закончится, пока вы не добавите заключительную цитату. Журнал git будет выглядеть так:

$ git log
commit abcde2f660c707br2d20411581c4183170c3p0c2
Author: Alex Pan <[email protected]>
Date:   Tue Apr 28 20:52:44 2015 -0700

    1. what i changed
    2. blank line
    3. why i changed

Ответ 2

Отрывок из документации

-m <msg>

--message=<msg>

Use the given <msg> as the commit message. If multiple -m options are given, their values are concatenated as separate paragraphs.

В вашем случае он делает именно то, что вы хотите, вставляет пустую строку между первой и второй строками

git commit -m "what I changed" -m "why I changed it"

Это полезно, если вы хотите изменить ранее добавленный комментарий

Ответ 3

Мне гораздо легче сохранить сообщение фиксации в файл, а затем использовать опцию -F.

Пример:

$ cat > /tmp/commit_msg.txt
DE123 bug fix: incorrect fetching of instance details
- fixed this and that
- also did such and such
$ git commit -F /tmp/commit_msg.txt

Вы также можете использовать редактор для редактирования файла сообщения перед фиксацией.

Ответ 4

Многострочный формат, который вы описываете, является рекомендуемым с Git (см. ОБСУЖДЕНИЕ в документации Git commit). Самый простой способ сделать это - использовать git commit без -m и написать свое сообщение в текстовом редакторе.

Ответ 5

Вместо того, чтобы использовать временный файл при попытке сделать это программно, вы можете использовать stdin

git commit -F-

затем напишите сообщение в stdin