加速tortoisegit的show log,减少等待时间
减少show log等待时间
90%的情况下下我们对git repo 执行 show log都只需要查看最近的提交记录,所以减少log条数,就可以加速打开时间。
settings -> dialogs1 -> log messages -> dafault limitation of log messages,
经过实测后,对于提交非常频繁的log,建议选择 Last N weeks(限制只查看x周的log)
40~50G的大仓库show log慢?
Git 没有每个文件的历史记录,因此它会遍历整个存储库以构建单个文件历史记录。如果对一个巨大的repo show log,这就会成为一个问题。
对于大型仓库,可以使用内置的 GIT GUI
原文:https://stackoverflow.com/questions/3352502/tortoisegit-slow-show-log-revision-query
Git GUI
git for windwos自带的gui界面,能用。
对比Tortoisegit,说说主界面上的选项
git gui rescan是Git GUI中的一个命令,用于重新扫描Git仓库中的文件以更新显示
Sign Off:点完之后,会在log后面添加一行签名信息,比如我的:Signed-off-by: qingqing.zhao zhaoqingqing01@corp.netease.com
staged changes:本地有修改的文件列表
commit和push最常用的命令了。
git gc 和compress database
通过git gui打开一个大型仓库,弹出提示如下:
This repository currently has approximately 320 loose objects
To maintain optimal performance it is strongly recommended that youcompress the database.
Compress the database now?
结论:可以压缩
有关compress database的讨论:https://stackoverflow.com/questions/21457407/git-gui-perpetually-getting-this-repository-currently-has-approximately-320-lo
关于git 的gc:https://www.atlassian.com/git/tutorials/git-gc
change log order(pull or merge后log混乱的解决办法)
多人团队开发提交流程:git commit → fetch → rebase→ push
不建议使用 git commit -> git pull -> git merge ->push ,因为这样会产生一条merge 且log顺序非线性
但是如果不小心merge的话,导致log顺序错乱的话,还有个补锅方法:
点击标题栏切换log order,让它按时间排序,只是graph这个线要怎么看呢?