2011-11-18 5 views
8

Sto provando a trovare un'opzione della riga di comando per gitk che ha lo stesso effetto di "Ordina per data" nella finestra "Visualizza/Modifica ...".git: Esiste un'opzione della riga di comando per "Ordina per data" per gitk?

man gitk mostra un numero molto limitato di opzioni rispetto a quelle disponibili nella GUI.

+0

CLI: http://stackoverflow.com/questions/8576503/how-can-i-make-git-log-order-based-on-authors-timestamp –

risposta

10

Il man gitk almeno menzioni ci vuole le stesse opzioni di git rev-list, tra cui

--date-order 

Questa opzione è simile a --topo-order nel senso che nessun genitore viene prima di tutti i suoi figli, ma altrimenti le cose sono ancora ordinate nell'ordine di timestamp di commit.

Vedere "Guide to understanding gitk?" per ulteriori informazioni.


Nota: se -d o --date-order è davvero l'argomento si sta dopo, meglio non usare troppo, secondo Linus se stesso (da lists-archives.com/git o www.spinics.net/lists/git/):

Il fatto è che, --date-order stringhe fuori e mescola i commit sulla stessa catena di sviluppo , e così facendo rende più difficili da vedere le diverse catene dello sviluppo .
Si finisce anche per mostrare lo sviluppo in un modo più "parallelo", che a sua volta rende la vista ancora più difficile da leggere.

Quindi suggerisco di non utilizzare --date-order per impostazione predefinita. Non aggiunge nulla a a nessun flusso normale e rende più difficile vedere l'immagine grande.

L'unica volta che si vuole veramente --date-order (o "-d", che è una abbreviazione per esso per appena gitk) è davvero

  • quando il quadro è davvero molto semplice, e si vuole realmente vedere più in dettaglio perché l'immagine grande è troppo banale per essere anche interessante altrimenti.
    (in altre parole: --date-order è bene per davvero semplice sviluppo in cui v'è sempre e solo un paio di rami o di cui ha potati via così gran parte della storia che la parte restante è semplice)
  • quando vuoi per eseguire il debug del comportamento "git rev-list", poiché l'ordine in realtà è importante per il modo in cui git attraversa le catene di commit.

Il secondo caso è qualcosa che sospetto che nessuno tranne me e poche altre persone abbiano mai fatto.
ho trovato molto utile insieme --show-all quando ero test del revisione Walker (vedi commette "Add "--show-all" revision walker flag for debugging" e "Make revision limiting more robust against occasional bad commit dates", dove i primi attrezzi --show-all, e la seconda è il risultato finale del mio debug).

In altre parole: non iniziare mai con "-d" o "--date-order" per impostazione predefinita.
Solo se si ha motivo di pensare che la vista sia troppo semplice o è necessario eseguire il drill down nelle relazioni di commit se lo si utilizza.

+0

Nota: se '-d' o' --date-order' è davvero l'argomento che stai cercando, meglio non usare troppo, secondo lo stesso Linus: http://amailbox.org/mailarchive/git/2008/5/28/1958754 – VonC

+0

Il tuo link è rotto (adesso). Perché non dovresti usarlo troppo? – JonnyJD

+0

@JonnyJD Ho ripristinato il collegamento e includo il suo contenuto nella risposta. – VonC

Problemi correlati