2012-07-26 12 views
49

Ho 2 rami A e B.git log la differenza tra 1 ramo da un altro

Ogni volta che corro una build, Ramo A viene fusa per incorporazione in Branch B. Voglio essere in grado di e-mail tutti gli aggiornamenti effettuati in A, dall'ultima volta che è stata eseguita la build. Come posso usare git log per poter copiare tutti i commit effettuati in A dall'ultima fusione A -> B?

risposta

78

Che sarà

git log B..A 

Ad es "Potrai vedere tutti i commit che sono in A ma non in B" o, se si desidera farlo contro rami non locali

git log origin/B..origin/A 
+6

intervalli git: http://git-scm.com/book/ch6-1.html#Commit-Ranges –

+4

@Jakub Penso che il collegamento corretto sia ora http://git-scm.com/book/it/v2/Git-tools-Revisione-Selection # _commit_ranges – lmsurprenant

17

una sintassi alternativa sarebbe quella di utilizzare:

$ git log refA refB --not refC 

o nel tuo caso di confronto solo due rami

$ git log A --not B 

anche dal GIT SCM Commit Ranges Docs

Quando si confrontano due rami, si tratta in realtà di preferenze. Ho appena trovato questo un po 'più leggibile e non devo preoccuparti di confondere A...B con A..B (citato anche nei documenti).

Problemi correlati