Интеграция Git с отслеживанием ошибок: может ли он отслеживать слияния?

#git #dvcs #bug-tracking

#git #dvcs #отслеживание ошибок

Вопрос:

Я смотрю на различные системы отслеживания ошибок (bt), которые имеют серверные части git, и все они, похоже, полагаются на добавление специфичного для bt тега к сообщению о фиксации, как способ определить, с какой ошибкой сопоставить фиксацию.

Учитывая, что git сохраняет историю фиксаций при выполнении слияний / извлечений / вишневых выборок, все эти коммиты (которые могут поступать от сторонних сторон, таких как upstream) не будут содержать в себе никаких специфичных для bt тегов и, следовательно, не будут отображаться в системе отслеживания ошибок. Что, на мой взгляд, делает его бесполезным для любого проекта git, кроме тех, которые полностью разработаны одним и тем же человеком / командой / организацией (которые затем всегда добавляли бы специфичный для bt тег к сообщениям о фиксации).

Я что-то здесь упускаю? Есть ли способ, которым работают эти интеграции git-to-bt, которые также могут фиксировать внешние коммиты, поступающие через слияния? Я просмотрел описания различных систем отслеживания ошибок (redmine, trac, jira и т.д.) И я не могу найти никакой документации, которая указывала бы, как они работают с этим (обычно у них есть примеры одиночных фиксаций только в документах).

Ответ №1:

Единственное, что я могу придумать, это то, что вы можете объединить в восходящей ветке, но скажите git, чтобы он не фиксировал результаты слияния с --no-commit , а затем git commit добавил вашу ссылку на отслеживание ошибок. В противном случае я не знаю, как багтрекер может быть достаточно умен, чтобы знать, как сопоставить номера ошибок с идентификаторами фиксации.

Комментарии:

1. Это позволяет мне добавлять текст только к фиксации слияния, верно? Это не позволяет мне редактировать поступающие коммиты. Плюс я не думаю, что это хорошая идея (я могу сделать это с помощью rebase -i), потому что это изменит коммиты, из-за чего git потеряет их отслеживание.

2. Да, вы изменяете фиксацию слияния. Если вы измените входящие коммиты (путем перебазирования или иным образом), SHA1 изменится. Я не знаю, чего вы пытаетесь достичь. Звучит так, будто вы пытаетесь автоматически сопоставить идентификаторы коммитов SHA1 с номерами ошибок. Нет ничего, что могло бы это сделать, и я не думаю, что когда-либо могло быть что-то для этого, ваша предпосылка неверна.