我如何判断给定目录是否是 git 存储库的一部分?
(以下是python的,不过bash什么的就可以了。)
os.path.isdir('.svn')
将告诉您当前目录是否由 Subversion 控制。 Mercurial 和 Git 在存储库的顶部只有一个 .hg/.git,所以对于 hg
我可以使用
os.system('hg -q stat 2> /dev/null > /dev/null') == 0)
但是 git status
如果没有任何更改,则返回非零(错误)退出状态。
正在迭代寻找 .git
我自己的路径吗?
原文由 Grumdrig 发布,翻译遵循 CC BY-SA 4.0 许可协议
在 ruby 中,
system('git rev-parse')
如果当前目录在 git repo 中,则返回 true,否则返回 false。我想 pythonic 等价物应该类似地工作。编辑: 果然:
请注意,当您不在回购中时,STDERR 上会有一些输出,如果这对您很重要的话。