将一堆.*rc
文件检出到主目录的正确方法是什么?
我在网上看到过很多 github 存储库,人们通常会给它们命名dotfiles
,我猜它们会被检出到它们的主目录中;但我不明白的是...
如何将其他主文件(特定于该计算机)与其.*rc
相关文件分开?
例如,您不想存储/home/<username>/Documents
在dotfiles
git 存储库中,但您希望将.vimrc
,存储/home/vim
在存储库中。
我知道使用.gitignore
忽略存储库的文件,但我不想.gitignore
每次将文件添加到/home/<username>/Documents
.有没有办法以相反的方式执行此操作,即我只指定与dotfiles
要包含在存储库中的项目相关的文件和目录?
另外,如果我为我已经开发的东西创建一个新的功能分支,并且我检查它,我不希望它在我检查它时“吹走”非点文件文件夹等,或者git
抱怨在切割新分支之前工作目录不干净。
这是否需要使用git 子模块?
我真正想做的是能够安装一个新的 Linux 机器,并安装所需的依赖项,.*rc
从我的存储库中查看我的文件和相关文件的通用版本,所以如果我在其中修复它,我可以将更改拉到其他机器上。
答案1
一种选择是使用符号链接。例如,假设我的 git checkout 在~/.dotfiles
.我可能有:
.vimrc -> ~/.dotfiles/vimrc
.bashrc -> ~/.dotfiles/bashrc
.bash_login -> ~/.dotfiles/bash_profile
...
我个人不会将我的主目录本身签入存储库。