我想在Github的一个仓库中管理所有配置文件。
例如,我有3个文件夹:folderA,folderB,folderC
folderA具有文件:confA
folderB具有文件:confB
folderC具有文件:confC
在文件夹A
git init
git remote add origin repoURL
git add confA
git commit -m "adding confA"
git push -u origin master
现在在Github的仓库中,有configA
当我对folderB进行相同操作时
我收到一个错误消息,说我必须先将存储库克隆到本地。
error: failed to push some refs to 'xxxxxx'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
这就是问题所在,我不想在我的文件夹中有一份回购副本,只需将文件夹中的一个文件推送到远程回购中即可。
并且配置文件夹无处不在,其中还包含其他文件。
对于每个conf文件,回购对我来说也不是一个好选择。
听起来您想要管理多个配置文件,但是拥有一个覆盖所有文件的大型总体存储库是不切实际的。这方面的一个例子可能是他们都生活在美国的不同地方/etc
。
使用Git可以做到这一点,但这需要稍微不同的方法。您可以在另一个位置(例如,通常在存储库的位置)创建一个存储库,然后将所有配置文件放置在您喜欢的位置。然后,您可以使用脚本或Makefile将修改后的版本安装到正确的位置。如果无法阻止在当前位置对其进行修改,则可以使用脚本将其从该位置复制到存储库中,然后根据需要提交。
这是许多人使用其个人点文件的方法,因为他们可能不希望将其整个主目录都用作Git存储库。然后,他们可以使用脚本将文件复制到其主目录中的正确位置。
如果您正在寻找一种解决方案,该解决方案可以处理多种系统上的更广泛的配置文件,则可能更喜欢Puppet之类的配置管理系统。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句