Używamy TFS z wdrożeniem Git jako naszą kontrolę źródła. Jeśli komunikaty zobowiązaniowe zawierają identyfikatory elementów, zaczynając od znaku numeru (np. {X0}}) łączy to zobowiązuje się bezpośrednio z tym elementem.

W przypadku pisania wiadomości zezwolenia nie ma problemu, komunikat zezwolenia pojawia się poprawnie w dzienniku. Odkąd napisałem hak git, numer przedmiotu jest ustawiony w każdym zatwierdzeniu.

enter image description here

Problem pojawia się, gdy używam interaktywnej remazy Git's . Chcę squasha niektóre zobowiązania, ale w edytorze znak numer jest interpretowany jako znak .

Tak to wygląda:

# 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. 
.
.
.

Do tej pory próbowałem z odwrotnym ukośnikiem, ale to nie działa. Pojawił się ukośnik, a następnie w samym komunikacie (\#1234 Commit Message 1)

Jakieś sugestie, jak mogłem squash moje zobowiązania, zachowując znak numeru? Ten sam problem w zmianie tekstu wiadomości zobowiązania również.

0
Marco Rehmer 9 marzec 2020, 13:58

2 odpowiedzi

Najlepsza odpowiedź

Musisz ustawić core.commentChar do niektórych znaków inne niż #, dzięki czemu można użyć # jako tekst zatwierdzenia, zamiast jako komentarz.

Możesz ustawić to tylko na czas trwania jednej remazy:

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

Na przykład. Ale jeśli często zrobisz to, możesz użyć git config, aby ustawić go w konfiguracji na repozytorium lub globalną.

1
torek 9 marzec 2020, 11:04

Po squasha i zamknięciu edytora można zmienić zatwierdzenie i zmienić tekst za pomocą #. Na przykład:

git commit --amend -m "#1234 just a fix"
0
Julian 9 marzec 2020, 11:10