Git提交计算一天

San*_*utt 9 git commit

我有一个叫做的分支development.现在我想知道每天(即)每天发生了多少次提交.

我想要Toal的提交次数(即)一天中的提交次数.

我尝试了这个命令,但它正在从分支中提供所有提交计数

git shortlog -s -n
Run Code Online (Sandbox Code Playgroud)

我的问题是计算一天中的提交数量

und*_*e_d 25

这回答了你所问的身份危机问题的"每一天"一面,这似乎无法决定是否要"每天/每一天"暗示多重或只是"一天"暗示单身.显然,"每一天"是"一天"的超集,所以这是一个有用的展示; grep这样可以做其余的事情.

短而甜蜜:

git log --date=short --pretty=format:%ad | sort | uniq -c
Run Code Online (Sandbox Code Playgroud)

示例输出:

      1 2017-12-08
      6 2017-12-26
     12 2018-01-01
     13 2018-01-02
     10 2018-01-14
      7 2018-01-17
      5 2018-01-18
Run Code Online (Sandbox Code Playgroud)

说明:

  • git log 显然是先决条件.
  • --date=short将我们设置date-formatYYYY-MM-DD,(A)是我们所需要的,(B)随后将按字母sort顺序按时间顺序排列.
  • --pretty=format:%ad告诉git我们我们只希望让每个提交的author d在我们的首选中吃date-format.如果你愿意,你可以改用cdcommit d吃,但是,一旦往往会少了很多有用的你cherry-pick,rebase等等.
  • | sort需要uniq,因为它只检查相邻的重复项.当然,我们几乎肯定希望最后订购日期.
  • | uniq -c计算每个相邻重复项的数量,YYYY-MM-DD并计算与日期相关的前缀.


ale*_*ete 5

试试这个:

$ git rev-list --count --since=<start-date> --before=<end-date> <ref>
Run Code Online (Sandbox Code Playgroud)

例如,要获取当前分支中昨天完成的提交数量:

$ git rev-list --count --since=yesterday --before=today HEAD
Run Code Online (Sandbox Code Playgroud)

绝对日期也被接受:

$ git rev-list --count --since=2016-03-02 --before=2016-03-03 HEAD
Run Code Online (Sandbox Code Playgroud)


小智 4

我尝试过:

git 日志 | grep 日期 | awk '{print " : "$4" "$3" "$6}' | 优衣库-c

它有效。你会得到类似的东西:

   5  : 3 Mar 2016
   4  : 2 Mar 2016
   8  : 1 Mar 2016
   [...]
Run Code Online (Sandbox Code Playgroud)

我在这里找到了命令。