我目前正在编写一个zsh函数来检查我的所有git仓库是否脏,然后打印出需要提交的仓库。到目前为止,我已经想通了,要找出一个Git仓库的清洁/肮脏状态最快的方法是通过git-diff
和git-ls-files
:git-diff在另一个目录中
if ! git diff --quiet || git ls-files --others --exclude-standard; then
state=":dirty"
fi
我对你的乡亲两个问题:
- 不任何人都知道更快,更有效的方式来检查文件更改/ git回购添加?
- 我想我的zsh函数被交给一个文件路径(比如
~/Code/git-repos/
)并检查其中的所有存储库。有没有办法做到不必cd到每个目录并运行这些命令?像git-diff --quiet --git-dir="~/Code/git-repos/..."
就好了。
谢谢! :)
会http://stackoverflow.com/questions/2657935/checking-for-a-dirty-index-or-untracked-files-with-git帮助吗? – VonC 2010-05-05 19:25:01
@VonC - 看起来不错。我希望我不必使用git-status,因为它有点重,但它允许我指定“远程”git目录来查找,这可能是我唯一的选择。 – ABach 2010-05-05 19:39:05