2012-04-08 14 views
41

Wykonuję zadanie na kursie uniwersyteckim i używam git jako kontroli wersji dla tego zadania. Gra, nad którą pracuję, jest jednak kompletna, jednak wraz z kartą chciałbym przesłać dziennik git, pokazując w ten sposób moje postępy w czasie, gdy nad nim pracowałem.Plik dziennika wyjścia protokołu Git

Próbowałem to:

git log --stat > log.log 

Ale to mniej więcej po prostu daje mi bardzo nieczytelny rzeczy. Czy ktoś może mi pomóc za pomocą polecenia, dzięki czemu mogę uzyskać ładne formatowanie?

+0

Co chcesz wyjście skupić się na? Komunikaty dotyczące zatwierdzania? Rozgałęzienie? Daty? Pliki? Zmiany? – GoZoner

Odpowiedz

71

Polecam używanie innego formatu niż domyślny. Moim zwykłym wyborem jest podsumowanie z wykresem, ale tylko jedno podsumowanie linii zwykle robi lewę.

Wariant 1: ogólny jedno pole/wykres

git log --pretty=format:'%h : %s' --graph > log.log 

Wyniki w:

* 2d3acf9 : ignore errors from SIGCHLD on trap 
* 5e3ee11 : Merge branch 'master' of git://github.com/dustin/grit 
|\ 
| * 420eac9 : Added a method for getting the current branch. 
* | 30e367c : timeout code and tests 
* | 5a09431 : add timeout protection to grit 
* | e1193f8 : support for heads with slashes in them 
|/ 
* d6016bc : require time for xmlschema 

Wariant 2: ogólny jednej linii w/o wykres

git log --pretty=format:'%h was %an, %ar, message: %s' > log.log 

Wyniki w:

a6b444f was Scott Chacon, 5 days ago, message: dammit, this is the second time this has re 
49d77f7 was Scott Chacon, 8 days ago, message: modified index to create refs/heads if it i 
9764edd was Hans Engel, 11 days ago, message: Add diff-lcs dependency 
e1ba1e3 was Hans Engel, 11 days ago, message: Add dependency for Open4 
0f87b4d was Scott Chacon, 12 days ago, message: merged recent changes 

Można znaleźć więcej opcji formatowania w docs here

+0

Używam '-' do oddzielania ścieżek od wersji –

+1

Można znaleźć symbole zastępcze formatu na https://git-scm.com/docs/git-log. Wyszukaj pod-nagłówek "ładne formaty" –

+0

FYI: Wiem, że ta odpowiedź jest stara, ale link "dokument" jest uszkodzony. Z pewnością nie zamierzam robić tego, co inni zrobili dla mnie: Oddaj głos mojej odpowiedzi jak 3, 4 lub 5 lat później ze względu na to, że link będzie zły w późniejszym czasie. Przesłałem aktualizację, aby wskazać na adres git-scm.com (https://git-scm.com/docs/pretty-formats). –

3

Spróbuj linię

git log > log.txt

1
git log --oneline --decorate > log.txt