是否有一种方法可以确定Git分支是何时创建的?我在我的repo中有一个分支,我不记得创建了它,我想也许看到创建时间戳会唤醒我的记忆。


当前回答

结合Andrew Sohn的回答(https://stackoverflow.com/a/14265207/1929406)

branchcreated=$(git reflog show --date=format:'%Y-%m-%d %H:%M:%S' --all | sed 's!^.*refs/!refs/!' | grep '/master' | tail -1| cut -d'{' -f 2| cut -d'}' -f 1 | xargs)
echo $branchcreated

其他回答

如何通过Github GUI知道

我展示了所有的答案,没有人用UI给出答案。如果有人想看到分支是通过Github UI创建的。

进入洞察标签。 在侧栏中选择Network选项卡。

您可以看到分支的创建,如下所示

Use

git show --summary `git merge-base foo master`

如果您更愿意使用gitk在上下文中查看它,那么使用

gitk --all --select-commit=`git merge-base foo master`

(foo是你要找的分支的名称。)

我还不确定git命令,但我认为您可以在reflogs中找到它们。

.git/logs/refs/heads/<yourbranch>

我的文件中似乎有一个unix时间戳。

更新:在打印日志时,似乎有一个选项可以使用reflog历史而不是提交历史:

git log -g

您还可以跟踪此日志,回溯到创建分支的时候。Git日志显示的是提交的日期,而不是在reflog中创建条目的操作的日期。除了在上面的路径中查看实际的reflog之外,我还没有发现。

如果只是检查原始修订的SHA1:

(源)

可以简化和使用git日志-一线主..修复

我找到了最好的方法: 我总是检查用这种方法创建的最新分支

git for-each-ref --sort=-committerdate refs/heads/