如何禁止git命令移动到父目录?

时间:2015-11-06 13:44:43

标签: git

我的主目录中有一个git的dot-files存储库。 每次我在子目录中使用git命令(例如String)时,我都没有自己的回购,我得到了点文件repo的日志,例如< / p>

git log

但是,我想将我的dot-repository仅限于以点开头的文件和目录(例如/home/dimid $ cd foo /home/dimid/foo $ git status ... log of ~/.git ),这样当我在.vim和{{{ 1}}不存在~/foo将输出通常的

~/foo/.git

即使父目录git log包含fatal: Not a git repository (or any of the parent directories): .git 文件夹。

我考虑过混淆~并添加例外,是否有更优雅的方式?

1 个答案:

答案 0 :(得分:3)

我不知道如何做到这一点;因为Git总是向上移动目录树,直到找到.git目录。现在,因为您的/home目录是一个git存储库;所有子目录将始终在.git文件夹中找到/home目录。

我可以看到一个解决办法,但它不是很干净......

  • 在您的家中(或其他地方)创建一个子目录;你将初始化你的git存储库(例如“/ home / user / configfiles /”)
  • 现在在你想要保存在git存储库中的配置文件和系统上的配置文件之间创建硬链接(例如“ln~ / .config ./”)(注意你需要使用硬链接;否则git只会对符号链接指向的路径进行版本设计)

这样你的主目录就不再是git仓库了;并且避免了这个问题...