有没有办法可以跟踪我在Windows下在Git中使用的命令?我想查看我在我的存储库中应用的所有命令。
我希望能够返回命令历史记录并找出导致问题发生的命令。
查看提交历史将是一回事,但是为了保留其他操作的历史记录,例如创建分支或添加远程,这些是否会被跟踪?
答案 0 :(得分:148)
您可以使用git-reflog(example here)查看历史记录:
git reflog
答案 1 :(得分:43)
您的命令日志可能在您的shell历史记录中可用。
history
如果查看飞行执行命令列表不适合您,请将列表导出到文件中。
history > path/to/file
您可以将导出的转储限制为仅显示带有“git”的命令,方法是将其与grep一起管道
history | grep "git " > path/to/file
历史记录可能包含格式为
的行518 git status -s
519 git commit -am "injects sriracha to all toppings, as required"
使用该号码可以用感叹号重新执行命令
$ !518
git status -s
答案 2 :(得分:8)
如果您使用的是CentOS或其他Linux版本,请在提示符下执行Ctrl
+ R
并输入git
。
如果您继续点击Ctrl
+ R
,则会针对以git
答案 3 :(得分:5)
如果使用Windows PowerShell,则可以键入“git”并按F8键。继续按F8循环显示所有git命令。
或者,如果你使用cygwin,你可以用^ R做同样的事情。
答案 4 :(得分:5)
在终端中输入history
。
它不是技术上的git,但我认为这是你想要的。
答案 5 :(得分:0)
我发现在Windows用户下我的“ home”文件夹中的git bash版本“ 2.24.0.windows.2”中,将存在一个名为“ .bash-history”的文件,其中没有文件扩展名。夹。它仅在您退出bash之后创建。
这是我的工作流程:
如果您真的想要积分,我想您可以制作一个批处理文件来完成所有这一切,但这对我来说已经足够了。希望它可以帮助某人。
答案 6 :(得分:-4)
git将显示影响索引的提交中的更改,例如git rm
。它不存储您执行的所有git命令的日志。
但是,大量git命令会以某种方式影响索引,例如创建新分支。这些更改将显示在提交历史记录中,您可以使用git log
查看。
然而,git无法跟踪的破坏性更改,例如git reset
。
因此,为了回答您的问题,git不存储您在存储库中执行的git
命令的绝对历史记录。但是,通常可以通过提交历史记录插入您执行的命令。