Squa sh фиксирует в интерактивном перебазировании со знаком числа (знак ha sh) - PullRequest
0 голосов
/ 09 марта 2020

мы используем TFS с реализацией Git в качестве исходного контроля. Если сообщения фиксации содержат идентификаторы элементов журнала невыполненных работ, начинающиеся со знака числа (например, #1234), TFS напрямую связывает этот коммит с этим элементом.

При записи сообщения фиксации проблем нет, сообщение фиксации правильно отображается в журнале. Поскольку я написал git -hook, номер элемента устанавливается в каждом коммите.

enter image description here

Проблема возникает, когда я использую git интерактивный ребаз . Я хочу набрать sh некоторых коммитов, но в редакторе знак числа интерпретируется как Знак комментария .

Вот как это выглядит:

# This is a combination of 4 commits.                                                                                                                            # This is the 1st commit message: 

#1234 Commit Message 1

# This is the commit message #2: 

#1234 some coding here

# This is the commit message #3: 

#1234 just a fix

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

Пока что пробовал с бэкслой sh, но это не работает. Backsla sh появилось тогда в самом сообщении (\#1234 Commit Message 1)

Есть предложения, как я могу использовать sh мои коммиты, сохраняя при этом номер знака? Та же проблема при изменении текста сообщения о коммите.

Ответы [ 2 ]

1 голос
/ 09 марта 2020

Вам нужно будет установить core.commentChar на какой-либо символ, отличный от #, чтобы вы могли использовать # в качестве текста коммита, а не в качестве комментария.

Вы можете установить это только для продолжительность одной ребаза: например,

git -c core.commentchar=: rebase -i ...

. Но если вы собираетесь делать это часто, вы можете использовать git config, чтобы установить его в вашем репозитории или глобальной конфигурации.

0 голосов
/ 09 марта 2020

После squa sh и закрытия редактора вы можете изменить коммит и изменить текст на #. Например:

git commit --amend -m "#1234 just a fix"
...