我喜歡git
顯示多少代碼我推送到服務器[1]
,有沒有辦法獲得輸入日期範圍或提交?如何在Git中使用日期範圍獲得相同的推送輸出?
[1]: 6 files changed, 575 insertions(+), 3 deletions(-)
我喜歡git
顯示多少代碼我推送到服務器[1]
,有沒有辦法獲得輸入日期範圍或提交?如何在Git中使用日期範圍獲得相同的推送輸出?
[1]: 6 files changed, 575 insertions(+), 3 deletions(-)
git push origin your_branch --verbose
這應該給你輸出的哈希範圍。現在,你可以這樣做:
git log sha1A..sha1B
如果你想與這個實驗首先添加--dry-run
的推 - 推實際上不會發生。
但你推前,你還可以嘗試:
git log origin/your_branch..your_branch
這會告訴你,你將推動提交。如果your_branch已經簽出,您可以發出:
git log origin/your_branch..
這將隱式地將範圍匹配到您的分支HEAD。
希望這有助於。
獲得這種信息的主要方式是--shortstat
,--stat
和--numstat
選項,它們可以被傳遞給diffcore機器,例如,通過git-diff
和git-log
。
對你來說,這聽起來像你想的--shortstat
選項,只給出了彙總行,不是每個文件的漂亮信息,如您--stat
給拉後看到。最後一個,--numstat
,以更機器可讀的格式提供相同的逐個文件信息。
要將此應用於提交範圍,只需使用git diff --shortstat A B
,其中A
和B
是您要比較的提交。
要獲得該範圍內每個單獨提交的相同信息,而不是所有集中在一起的信息,請使用git log --shortstat A..B
。
如果你想按日期要做到這一點,你有幾個選擇:
指定單個提交使用形式<branch>@{<date>}
。但請注意,這給出了該分支在該給定日期的位置。如果它是一個長期存在的本地分支,這很好,但如果它在那天還沒有存在,或者它是一個遠程分支,當你獲取時會大幅跳躍,那可能不是你想要的。
使用--since
和--until
選項爲git log
。這意味着如果你想要總體總結,你必須使用兩個步驟 - 一個找出範圍的每一端的提交,一個實際做差異。
有關如何指定提交的更多信息,請參閱man gitrevisions
。
但是,這並不顯示我插入和刪除了多少行。 – igorgue 2011-05-10 00:45:14
add --stat給日誌命令 – 2011-05-10 07:29:16
哦流氓!謝謝! – igorgue 2011-05-10 17:13:02