我想找出是谁创建了分支。
我有能力这样做:
git branch -a | xargs -L 1 bash -c 'echo "$1 `git log --pretty=format:"%H %an" $1^..$1`"' _
但是,这将返回每个分支的最后一个提交者,而不一定是创建该分支的人。
我想找出是谁创建了分支。
我有能力这样做:
git branch -a | xargs -L 1 bash -c 'echo "$1 `git log --pretty=format:"%H %an" $1^..$1`"' _
但是,这将返回每个分支的最后一个提交者,而不一定是创建该分支的人。
当前回答
对于那些正在寻找DESC的人…这似乎是可行的——sort=-
Ty的格式,这是新的…我的眼睛有些血丝脱落了
git for-each-ref --format='%(color:cyan)%(authordate:format:%m/%d/%Y %I:%M %p) %(align:25,left)%(color:yellow)%(authorname)%(end) %(color:reset)%(refname:strip=3)' --sort=-authordate refs/remotes
进一步参考:https://stackoverflow.com/a/5188364/10643471
其他回答
我知道这不是问题的全部范围,但如果你发现只需要过滤特定作者提交的文件,你总是可以管道到grep:)
# lists all commits in chronological order that
# belong to the github account with
# username `MY_GITHUB_USERNAME` (obviously you
# would want to replace that with your github username,
# or the username you are trying to filter by)
git for-each-ref --format='%(committerdate) %09 %(authorname) %09 %(refname)' | sort -committerdate | grep 'MY_GITHUB_USERNAME'
编码快乐!:)
我们可以根据作者名找到答案
git for-each-ref --format='%(authorname) %09 %(if)%(HEAD)%(then)*%(else)%(refname:short)%(end) %09 %(creatordate)' refs/remotes/ --sort=authorname DESC
假设:
布兰奇是由主人制成的 还没有被合并到master
git log --format="%ae %an" master..<HERE_COMES_THE_BRANCH_NAME> | tail -1
对于那些正在寻找DESC的人…这似乎是可行的——sort=-
Ty的格式,这是新的…我的眼睛有些血丝脱落了
git for-each-ref --format='%(color:cyan)%(authordate:format:%m/%d/%Y %I:%M %p) %(align:25,left)%(color:yellow)%(authorname)%(end) %(color:reset)%(refname:strip=3)' --sort=-authordate refs/remotes
进一步参考:https://stackoverflow.com/a/5188364/10643471
警告!
注意,这些命令显示了分支指向的提交数据,因此提交作者可能与分支作者不同。 Git不存储分支创建者,只存储提交的一个。