Я использую git версии 2.16.2 в MacOS Mojave (но я видел это и в других версиях) и наблюдаю странное поведение git commit -v .

Иногда, когда я пишу свое сообщение коммита и закрываю редактор (в моем случае nano), сообщение коммита изменяется, и в сообщение добавляется дифференцированный коммит.

Например:

commit c7f28bc4849318a542fe6312444f3a72d82787f0
Author: Ivan Dokov <***@gmail.com>
Date:   Tue Oct 16 16:33:49 2018 +0300

Firm Notes deletion

diff --git a/src/app/pages/firm/firm-notes/firm-notes.component.html b/src/app/pages/firm/firm-notes/firm-notes.component.html
index 2267393..f0cfed4 100644
--- a/src/app/pages/firm/firm-notes/firm-notes.component.html
+++ b/src/app/pages/firm/firm-notes/firm-notes.component.html
@@ -14,17 +14,38 @@
...

Я думаю, что это происходит, когда я не оставляю пустую строку раньше:

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.

Такое поведение не соответствует. Обычно я не оставляю пустую строку, и она работает как надо, но когда я на самом деле вижу сообщение о плохом коммите, я исправляю коммит и добавляю пустую строку, и проблема решается. Проблема в том, что я не всегда слежу за сообщением о коммите после выполнения коммита и отправляю такие плохие сообщения о коммите в репозиторий.

К сожалению, я единственный, кто использует git commit -v в офисе, и никто другой не наблюдает такой проблемы.

Вот мой гитконфиг.

Google также не помогает, так как я не могу найти сообщения с похожими проблемами.

Обновление: я только что узнал, что добавление пустой строки после сообщения о коммите не всегда решает проблему.

1 ответ1

0

Когда я делаю git commit -v я получаю это сообщение по умолчанию:

# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch master
# Changes to be committed:
#   modified:   foo.txt
#
# ------------------------ >8 ------------------------
# Do not modify or remove the line above.
# Everything below it will be ignored.
diff --git a/foo.txt b/foo.txt
index 88545b8..9fcffaf 100644

Для вашего случая эту часть не следует изменять:

# ------------------------ >8 ------------------------
# Do not modify or remove the line above.
# Everything below it will be ignored.

Когда вы не видите эти строки, вы можете настроить git commit странным образом. В этом случае проверьте с помощью этой команды и обратитесь к git help config и git help commit:

git config -l |grep "^commit\."

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .