为什么git log不简单地记录所有最近的提交呢?
这是什么意思?
--all
Pretend as if all the refs in refs/ are listed on the command line as <commit>.我认为,一旦翻译成通俗易懂的英语,它意味着显示所有的最新提交。
谁能澄清一下。
发布于 2015-04-20 19:32:23
不,这并不意味着它显示了所有最新的提交。它显示在分支、标记和其他参考文献的历史记录中的所有提交,但它没有显示任何引用都无法到达的提交。当您刚刚运行git commit --amend时,无法从任何ref中获得的一个典型的提交示例是:以前的提交在本地仍然存在,但它已不可再访问,并且不会在git log --all中显示。但是git reflog会确认它确实仍然存在。
至于为什么--all不是默认的:您通常不希望这样做。例如,如果您在分支母版上,并且运行git log,您通常对任何特性分支的历史不感兴趣,您通常想要查看主服务器的历史记录。
如果您通常需要--all行为,我建议您创建一个别名。
发布于 2015-04-20 19:33:23
发布于 2021-11-27 11:46:51
来自斯科特·查肯和本·斯特劳布的亲Git第68页
git log并不总是显示所有的分支。..。默认情况下,git log只会在下面显示提交历史记录,这是您签出的分支。要显示所需分支的提交历史记录,必须显式地指定它:git log testing。要显示所有分支,请将--all添加到git命令中。
因此,基本上,没有--all,您只会看到实际上构成当前分支的提交。
https://stackoverflow.com/questions/29756637
复制相似问题