[英]History or log of commands executed in Git
有沒有辦法可以跟蹤我在 Windows 下的 Git 中使用的命令? 我想查看我在我的存儲庫中應用的所有命令。
我希望能夠返回命令歷史記錄並找出導致問題的命令(如果發生)。
查看提交的歷史記錄是一回事,但是為了保留其他操作的歷史記錄,例如創建分支或添加遠程,這些是否被跟蹤?
您可以使用git-reflog查看歷史記錄( 示例在這里):
git reflog
您的命令日志可能會在您的 shell 歷史記錄中可用。
history
如果您不喜歡查看已執行命令的列表,請將列表導出到文件中。
history > path/to/file
您可以通過使用 grep 管道將導出的轉儲限制為僅顯示其中包含“git”的命令
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
如果您使用的是 CentOS 或其他 Linux 風格,那么只需在提示符下Ctrl
+ R
並輸入git
。
如果您繼續Ctrl
+ R
這將在您的歷史記錄中反向搜索以git
開頭的命令
在終端中輸入history
。 從技術上講,這不是 git,但我認為這是您想要的。
如果您使用 Windows PowerShell,則可以鍵入“git”並按 F8。 繼續按 F8 循環瀏覽所有 git 命令。
或者,如果你使用 cygwin,你可以用 ^R 做同樣的事情。
我發現在我的 git bash "2.24.0.windows.2" 版本中,在 Windows 用戶下的“home”文件夾中,將有一個名為“.bash-history”的文件,該文件夾中沒有文件擴展名。 它僅在您退出 bash 后創建。
這是我的工作流程:
如果你真的想要積分,我想你可以制作一個批處理文件來完成所有這些,但這對我來說已經足夠了。 希望它可以幫助某人。
git 將顯示影響索引的提交更改,例如git rm
。 它不會存儲您執行的所有 git 命令的日志。
但是,大量的 git 命令會以某種方式影響索引,例如創建新分支。 這些更改將顯示在提交歷史記錄中,您可以使用git log
查看。
但是,存在 git 無法跟蹤的破壞性更改,例如git reset
。
因此,為了回答您的問題,git 不會存儲您在存儲庫中執行的git
命令的絕對歷史記錄。 但是,通常可以通過提交歷史插入您執行的命令。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.