Почему git gui не учитывает строки комментариев, добавленные git hook? - PullRequest
3 голосов
/ 27 января 2011

Я написал ловушку prepare-commit-msg, которая отображает идентификаторы рабочих элементов Team Foundation Server в сообщение Git commit.(При фиксации появляется список выбора. Пользователи могут выбрать один или несколько рабочих элементов, и рабочие элементы добавляются в сообщение фиксации с использованием определенного формата. Позже мы используем git log --grep для поиска конкретных фиксаций, принадлежащих рабочему элементу).

Я использую комментарии в сообщении фиксации, чтобы предоставить дополнительную информацию пользователю.Например, когда Team Foundation Server недоступен, я добавляю следующий комментарий в начало сообщения фиксации.

# Warning: could not access Team Foundation Server at <servername>.

Поскольку строка начинается со знака #, она не добавляется к фактическомусообщение коммита ... при использовании git commit .

Если я использую git gui, приведенный выше комментарий появляется в интерфейсе git gui, но фактически добавляется к сообщению git commit при фиксации.

Есть ли конкретная причиначто git gui на самом деле добавляет строки, начинающиеся со знака #?Я ожидал, что он проигнорирует эти строки.

1 Ответ

3 голосов
/ 27 января 2011

Git вообще не имеет комментариев в таких сообщениях.То, что вы имеете в виду - это особенность git commit -e, которая используется по умолчанию, если не используются -m или -F.

git gui, git commit -m и git commit -F все принимают сообщение фиксациикак именно то, что им было дано.

Поскольку вы используете ловушку prepare-commit-msg для добавления строк, решением будет добавить ловушку commit-msg, которая удаляет строки.Хук commit-msg будет использоваться всеми методами коммита.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...