2016-03-07 34 views
12

Kiedy wykonuję numer git rebase -i w oddziale współdzielonym ze współpracownikiem, często chcę po prostu ponownie utworzyć moje własne zatwierdzenia. Jednakże, ponieważ interaktywne narzędzie rebase nie dodaje informacji o autorze do pliku rebase (wszystko, co daje, to hash zatwierdzenia i opis), kończę sprawdzanie zatwierdzeń w innej zakładce, aby sprawdzić, czy są moje czy nie.Czy istnieje sposób na listę autora commit w `git rebase -i` (interaktywny)?

Czy istnieje sposób podania git rebase -i flagi --format (lub coś w tym stylu), aby zawierała autora?

Odpowiedz

13

Od wersji 2.6, git rebase -i używa rebase.instructionFormat (domyślnie %s) do generowania tekstu po pick NNNNN....

Ponieważ jest to element git-config, można ustawić wartość dla repozytorium, dla siebie w ogóle, a nawet przy użyciu opcji -c w tym samym czasie.

+9

'git config --add rebase.instructionFormat "(% AN <%ae>)% s"' (dla leniwych) – jdknight

5

zmieniać swoich .gitconfig dodać:

[rebase] 
    instructionFormat = %s [%an] 

który pokaże komunikat krótki popełnienia, a następnie nazwę autora w nawiasach kwadratowych.

1
git -c "rebase.instructionFormat=(%an <%ae>) %s" rebase -i COMMIT_HASH 

wyjście Interactive będzie wyglądać następująco:

pick b596a7b (Nik Sumeiko <[email protected]>) Refactors type checking utilities 
pick c8b815f (Attila Kerekes <[email protected]>) Implements commit message linting 
+0

Jest to polecenie lepiej w jakiś sposób niż zaakceptowana odpowiedź ('git config --add rebase.instructionFormat" (% an <%ae>)% s "'), czy jest to po prostu inny sposób na skórze kota? – machineghost

+2

To tylko oneliner do kopiowania/wklejania SODD (Stack Overflow Driven Development) –