2014-10-16 37 views
11

使用git diff --shortstat my_branch master是一個很好的方式來告訴有多少文件更改和插入和刪除。我讀了git diff documentation,但我找不到一種方法來告訴my_branchmaster之間的提交數量。這是否存在?如何計算兩個分支之間的提交數量?

+0

你是要求(#對不是在my_branch上的master提交)+(#在my_branch上提交而不是在master上)? – 2014-10-16 20:56:41

回答

9

我想你可以嘗試:

git的日誌--oneline mybranch ^主

對於準確計數:

git的日誌--oneline mybranch ^大師| wc -l

應該給你提供你想要的信息。

+0

「^」符號是什麼? – JobaDiniz 2017-09-17 19:08:23

+0

這意味着選擇從mybranch開始並以結束於並不包括主的日誌。 – 2017-09-19 19:05:43

1

另一種選擇。散列/數只是一個例子

$ git checkout my_branch 
$ git cherry master 

+ 950b187c4b28844680df7008cfa3b348c1a46016 
+ 109e427cbe84c3c8fc0ac2fbfb5120bcc2511933 
+ 9bc217c0bcabbd6aa4ba88bbaaad23805994f90d 
+ 74e054614a1bb1c442fbcf53926dcb910097321c 
+ b34ae1ce8a58e0cbdbe1657ebca81a3036d7c72d 

會給提交了在my_branch散列的列表,但不是在主

$ git checkout my_branch 
$ git cherry master | wc -l 
5 

會給那些在my_branch提交的數目而不是在主

瞭解更多關於git的櫻桃here

4

我發現這是簡單得多:

git rev-list --count my-branch ^master 
+0

失蹤..作爲git版本2.13.5(Apple Git-94) – Intel 2017-11-01 07:03:16

1

我不能讓億泰的回答工作,但是這對我的作品在OS X:

git rev-list --count master..my-branch 

my-branch可以在當前分支的變化被省略。

0

這給了我,我已經到branch_being_merged_in做出提交的數目,因爲從branch_A分支:

混帳登錄--pretty =%H branch_A..branch_being_merged_in | wc -l

相關問題