too*_*hel 1 git version-control
我的系统管理员在文件系统的根目录下放了一个git repo来存储配置文件.这意味着我可以在文件系统中的任何位置添加到THAT存储库.这意味着"git status"并没有告诉我,如果我的项目不存在任何回购,因为根目录总是在那里.
这对我来说似乎很危险.我错了吗?
对我来说,拥有一个git repo是一个隐含的契约,这个目录中的所有东西都在源代码控制中(由于.gitignore而被忽略的目标文件等除外).这是老派的源头控制吗?
这对我来说似乎很危险.我错了吗?
我认为这是令人困惑的,而不是危险的.我们已经尝试过这样的工作,并且最终完全放弃了它,因为你描述的原因.我们的解决方案是将大部分配置转移到Puppet,因此我们将版本控制应用于配置管理系统,而且通常不直接对系统进行更改.
sysadmin的一个选项是将.git目录放在其他位置,然后GIT_DIR在需要与存储库交互时适当地设置环境变量.例如:
GIT_DIR=/etc/sysrepo.git git add /etc/someconfig.conf
Run Code Online (Sandbox Code Playgroud)
这解决了将.git目录放在文件系统根目录中的问题.