如何打印当前分支以外的分支的日志?

我在一个有些变化的树枝上。更改分支是一件痛苦的事情,因为有些文件被进程锁定,所以要更改分支,我必须停止所有具有锁定的进程,然后 stash更改,然后检出另一个分支以查看其日志。

有没有可能查看不同分支的日志,而不必检查它?

45405 次浏览

DR

使用

git log <branch>

其中 <branch>是利益分支的名称。

git-log手册页..。

那个命令的手册页中给出的 git-log概要的简化版本如下

git log [<revision range>]

再往下,你可以看到下面的段落:

如果没有指定 <revision range>,则默认为 HEAD(即当前提交的整个历史记录)

换句话说,git log等价于 git log HEAD。如果您在一个名为 mybranch的分支上,那么这个命令也等效于 git log mybranch

您希望将日志限制为可从另一个分支访问的提交,即当前不在其中的分支。最简单的方法是显式地将感兴趣的分支的名称传递给 git log:

git log <branchname>

有关 <revision-range>参数可以采用的许多形式的更多细节,请参见 Gitversion 管理页面

这不是一个答案,但也许是对答案的有益提示:

最近我收到了

fatal: ambiguous argument 'other_branch_name': both revision and filename
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

如果需要对单个文件进行日志记录,那么应该进行大纲记录

git log other_branch_name -- relative_path_to_file

至少在另一个分支中不存在文件 related _ path _ to _ file 的情况下

我没有检查它是否也适用于目录,但我希望它的大纲是

git log other_branch_name -- relative_path_to_dir/