Прерывание фиксации из-за пустого сообщения

Я читаю учебник по git, и моя следующая задача - использовать команду "git commit" и использовать редактор, чтобы сделать мое сообщение commit. Я могу заставить редактор подойти, но я всегда получаю "Прерывание фиксации из-за пустой ошибки сообщения". Я посмотрел на Как сделать git использовать редактор моего выбора для коммита? и Отменить фиксацию из-за пустой фиксации сообщение среди других мест, и ни один из вариантов не работает. -wait не является законным, а аргументы -multiInst и -notabbar не помогли. Кроме того, когда я помещаю код в свой C:\Users\Kendall.gitconfig git, все еще используется значение, которое я ввел в основной редактор из командной строки. Я попытался использовать флаг -F в моем файле .gitconfig, но это не повлияло, потому что оно все еще использовало значение из командной строки. Любая помощь будет оценена.

Ответы

Ответ 1

Вы не сохраняете файл в редакторе, поэтому, когда git пытается прочитать временный файл, он не видит сообщения о фиксации.

Самое легкое для новичков - использовать флаг -m и передать ваше сообщение в виде строки в кавычках.

git commit -m "commit message here"

Ответ 2

Я нашел ответ на свою проблему. Notepad ++ появляется с пустым новым файлом, но если я открою ~/.git/COMMIT_EDITMSG и введите свое сообщение, он отлично работает. Я должен сделать то же самое, если я вернусь. Спасибо за помощь!

Ответ 3

Git commit игнорирует строку, начинающуюся С#. Если вам нравится сообщение, сгенерированное Git Bash, вам нужно изменить "#" на string "". Сохраните сообщение (и редактор), затем коммит будет продолжен.

Ответ 4

Я просто хочу сказать спасибо мистеру Джону Зетебьеру и его ответу выше. (Этот ответ можно просто поместить под его ответом, но я не могу добавить комментарий под его ответом, так как мне не хватает кредита? Чтобы сделать это еще... В любом случае, если вы делаете "git commit", чтобы открыть Commit Editor, в верхней части вы должны найти:

# Пожалуйста, введите сообщение для ваших изменений. Строки, начинающиеся с \n # с '', будут игнорироваться, а пустое сообщение отменяет фиксацию.

Итак, если я хочу использовать комментарий, автоматически созданный в редакторе, я должен удалить все символы "#" в начале каждой строки. Но так как у меня было много изменений, из-за которых в редакторе отображался очень длинный комментарий, я не заметил ничего такого наверху и часами поиска, чтобы выяснить, почему он заставляет меня давать:

Отмена коммита из-за пустого сообщения коммита.

несмотря на то, что я "Сохранить" редактировал и проверял, что сохранено как COMMIT_EDITMSG. Надеюсь, любой, у кого возникла такая же проблема, не тратит свое время на такие вещи!