Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示所有最近的git提交,无论它们是否属于本地签出的分支_Git - Fatal编程技术网

显示所有最近的git提交,无论它们是否属于本地签出的分支

显示所有最近的git提交,无论它们是否属于本地签出的分支,git,Git,比如说,我有一个git回购协议,有很多分支机构。如果我这样做 git log --oneline | head git log --branches=* --oneline | head 我将看到当前分支上最新提交的列表。如果我这样做 git log --oneline | head git log --branches=* --oneline | head 我将看到任何本地签出分支上的最新提交列表。但是我应该怎么做才能看到所有最新提交的列表,不管它们是否在本地签出的分支上?就我所知,这

比如说,我有一个git回购协议,有很多分支机构。如果我这样做

git log --oneline | head
git log --branches=* --oneline | head
我将看到当前分支上最新提交的列表。如果我这样做

git log --oneline | head
git log --branches=* --oneline | head
我将看到任何本地签出分支上的最新提交列表。但是我应该怎么做才能看到所有最新提交的列表,不管它们是否在本地签出的分支上?就我所知,这并不是一个只存在于远程设备上的提交问题,因为我可以这样做

git checkout <hash>
git签出

并查看提交的内容;只是如果我再次签出
master
,我就无法让它显示在
git log

默认情况下,
git log
从当前签出的提交(称为HEAD)开始,并从那里返回其历史记录

我相信你想要

假设refs/中的所有REF以及HEAD在命令行中都列为

因此,如果您有branch1,branch2,origin/branch1,origin/branch2,tag1,tag2
git log——所有
都相当于
git log branch1 branch2 origin/branch1 origin/branch2 tag1 tag2 HEAD


如果您只想看到按时间顺序进行的提交,那就足够了。如果您想查看它们之间的关系,请添加
--图形
以显示它们的连接,并添加
--装饰
以显示引用(标记和分支)。

更新:严格来说,这不是对我问题的回答,但我已经出于我的目的(可能还有其他人的目的)解决了这个问题通过执行
git log--oneline--remotes=*
,我猜这会显示属于远程上签出分支的任何提交。简单的
git log--oneline--all
有什么问题吗?省略
=*
,它要么什么都不做,要么(在Linux上很少的情况下)会导致问题。如果需要全局模式,请引用它(
=“abc[d-g]*”
)以保护命令行解释器中的
*
[
字符。