移动.git目录而不移动文件

时间:2013-08-06 09:59:58

标签: linux git version-control configuration-management

我用来跟踪某些linux系统文件(/ etc / *)的更改,我在/ etc中有.git 但现在我决定把它移到/因为我想跟踪/ etc之外的文件(/ etc和/都在同一个文件系统中......),我这样做并尝试重新添加相同的文件:

git add $(git status | awk '/deleted/ { print "etc/"$3 } ')

但它似乎没有像我希望的那样工作,因为现在是两个列表,其中一个带有“新文件”列表,另一个带有“已删除文件”列表,如果现在提交,我将丢失所有历史记录 对于文件....

正确的步骤是什么?

谢谢! 安东尼奥

2 个答案:

答案 0 :(得分:3)

使用git subtreeinstallation instructions,如果尚未安装)。

/创建一个新的存储库,并将其与/etc中的现有存储库合并:

$ cd /
$ git init
$ git subtree --prefix etc /etc master

答案 1 :(得分:2)

SO上有类似的问题:

My Git repository is in the wrong root directory. Can I move it? (../ intead of ./)

Moving a git repository

在没有丢失文件历史的情况下,无法更改目录。