2012-11-25 13 views
6

Ho appena iniziato a utilizzare Git su Windows. Sto ospitando su BitBucket e usando TortoiseGit come client Windows.Log Graph in TortoiseGit non mostra branch/merge?

Le cose si stanno muovendo nella giusta direzione, ma io sono senza tracce in un punto. Stavo lavorando al master, e a un certo punto ho creato una nuova filiale. Poi ho continuato a lavorare sulla nuova filiale e ho continuato a impegnarmi, spingendo. Alla fine, quando ho finito, ho unito questo nuovo ramo (la codetidy) al master.

Ora quando eseguo "Mostra registro" e selezioni "Tutti i rami", ottengo una linea retta nel grafico. Non ci sono informazioni da quando un ramo è stato rimosso e quando è stato ricomposto. Per favore, fammi trovare queste informazioni

Version graph

risposta

6

Questo è probabilmente perché la stampa era un fast-forward merge , il che significa che non c'erano alcuna impegna fatto per master tra il momento in cui codetidy è stato realizzato e quando fu fusa nel - quindi Git sposta semplicemente master in modo che punti allo stesso commit (perché ha già lo stesso identico contenuto del file di come sarebbe un'unione), piuttosto che creare un commit unione non necessario.

Se non si desidera questo comportamento, è necessario forzare Git per creare un commit di unione separato: nella riga di comando, questo viene eseguito con git merge --no-ff. In TortoiseGit, è fatto selezionando la casella di controllo "No Fast Forward" nella finestra di fusione (vedi this previous StackOverflow answer per uno screenshot).

+0

sì, hai ragione. Non c'è stato alcun commit sul master. Sembra una cosa saggia fatta da Git. Ma come git ha spostato il master per puntare all'ultima commit se la codetidy, e se ora finalmente cancellassi il branch come praticamente ho fuso e ho finito con il branch? –

+1

Quindi 'master' rimarrà puntato allo stesso punto di entrambi i rami attualmente puntati. I rami in Git sono semplicemente indicatori di commit; attualmente hai due puntatori che puntano allo stesso commit. Se elimini uno dei puntatori, l'altro punta ancora a quel commit. – Amber

Problemi correlati