2016-05-10 10 views
6

Sto utilizzando Git in un team di tre persone per creare un'app iOS. Per questo progetto siamo tutti basati su Mac e Xcode e abbiamo una varietà di modi diversi per usare Git: all'interno di Xcode, usando Github Desktop e dal terminale di Bash.Perché la cronologia del desktop GitHub presenta la storia come se provenisse solo da un nostro team?

Sono confuso sulla storia che sto vedendo sul desktop GitHub - è lineare e sembra essere tutto da uno sviluppatore.

posso usare il comando da terminale git log --since='2016-05-06' --pretty=format:"%h %an %cd" --graph per vedere impegna questi ultimi giorni:

terminal git log screenshot

posso vedere chiaramente che gli ultimi dodici commit sono distribuite tra tutti e tre i contribuenti. Ma non sembra come questo in GitDesktop:

GitHub screenshot

Ecco tutti i commit recenti sembrano essere da uno sviluppatore, e tutte disposte in modo lineare, senza la struttura ramificata dimostra l'opzione --graph-git log.

Perché il desktop GitHub presenta la cronologia come uno sviluppatore? Dov'è finita la struttura delle diramazioni? Come faccio a ottenere GitHub Desktop per mostrarmi la cronologia di git log?

risposta

7

Ho ricevuto risposta dal team GitHub.

Il comando di terminale che è un confronto migliore è git log --since='2016-05-06' --pretty=format:"%h %an %cd" --graph --first-parent. Guardando il git logdocumentation l'opzione --first-parent è descritto come:

Seguire soltanto il primo genitore commettere dopo aver visto una fusione commesso. L'opzione può offrire una panoramica migliore durante la visualizzazione dell'evoluzione di un ramo di argomento specifico , poiché le fusioni in un ramo di argomento tendono ad essere solo quando si aggiorna l'aggiornamento a monte di volta in volta e questa opzione consente di ignorare l'individuo si impegna a portare nella tua cronologia da una tale unione.

Nella loro risposta GitHub quota di ciò che uno dei loro sviluppatori detto a proposito del GitHub Desktop Comparison Graph

"GitHub Desktop è ottimizzato per GitHub Flow. In questo modello, si fonde quasi sempre rappresentare sia (1) un filiale che viene unita al ramo predefinito tramite una richiesta pull o (2) un ramo in fase di aggiornamento da il ramo predefinito

Nel primo caso, è molto utile vedere quale pull reques Sono stati uniti , non i singoli commit che compongono quella richiesta di pull. Pensiamo che le richieste pull siano incredibili e molto utili per comprendere la cronologia di , quindi vogliamo dare la priorità a queste.

Nel secondo caso, la visualizzazione dei commit inviati con un'unione solo oscura le modifiche sul ramo. È molto utile vedere i commit unici per il ramo."

Ma l'obiettivo è che 'in futuro [essi] vorrebbero fare tutti i commit raggiungibile in GitHub Desktop'

Problemi correlati