我需要查看我正在使用的分支的历史记录。例如,我有 4 个分支:master、b-1、b-2、b-1-1。分支“b-1-1”是分支“b-1”的子分支。首先,我在 master 分支,然后在分支 b-1,然后在分支 b-1-1,然后在分支 b-2,然后再次在 b-1-1。我使用过的分支的历史如下所示:
- b-1-1
- b-2
- b-1-1
- b-1
- 掌握
可以在git中这样做吗?如果是,那么如何?我试图检查 git 日志,但它不是我要搜索的。
我需要查看我正在使用的分支的历史记录。例如,我有 4 个分支:master、b-1、b-2、b-1-1。分支“b-1-1”是分支“b-1”的子分支。首先,我在 master 分支,然后在分支 b-1,然后在分支 b-1-1,然后在分支 b-2,然后再次在 b-1-1。我使用过的分支的历史如下所示:
可以在git中这样做吗?如果是,那么如何?我试图检查 git 日志,但它不是我要搜索的。
从您在问题中制定的某种意义上说,我认为您看不到哪个分支被签出以及以何种顺序签出。分支是一个指针,只有当你提交时这个指针才能改变。
例如,如果您:
git checkout abc
)git log -n 10
)git checkout xyz
)然后 git 不会记得你正在检查abc
分支
话虽如此,您可以使用以下命令查看您在过去 3 天所做的提交:
git log --since="3 days ago" --author=<HERE_COMES_YOUR_NAME_IN_GIT> --all
这个--since
参数可以非常灵活,1 day ago
准确的时间,1 week ago
都是可能的值,查看文档和这个 SO 线程
另一个有趣的选择是使用(以最基本的形式):git for-each-ref --sort=-committerdate refs/heads/
此命令将按降序打印所有分支中的所有提交。SO中已经有关于这个的线程,它提供了比我能做的更多可能使用这个命令的选项,所以请检查一下。