我存储我的配置文件(~/.bashrc
, ~/.emacs
, ~/emacs
等)在git中。我配置的方法只是在主目录中添加一个 git 存储库。
我发现这种方法有一些问题:
-
git gui
需要很长时间,因为它递归地扫描整个主目录。
- 有时我会不小心将文件添加到应该转到新存储库的配置存储库(我创建一个新项目,例如
~/projects/foo
,忘记它还没有初始化 git repo,然后执行git add bar.xyz
in the foo
目录。这会导致文件被添加到配置存储库中)。
我不确定将 git 存储库嵌套在已经有 git 存储库的目录下是否明智,尽管我还没有遇到任何基本问题。
是否有更好的方法,或者这是人们在 git 中存储本地配置文件的标准方法?
我正在使用 git 存储库来管理点文件。它包含了:
- 一个目录
dotfiles
,其中包含我想要跟踪的实际点文件/点目录。
-
一个 shell 脚本,用于创建符号链接dotfiles/.*
in $HOME
, like
for dotfile in dotfiles/.* ; do
case $(basename $dotfile) in
.)
;;
..)
;;
*)
ln -sv $(realpath dotfile) $HOME/$(basename $dotfile)
;;
esac
done
在我添加新内容后手动运行该脚本dotfiles
(通常通过将点文件移动到存储库中),或者在新的干净的存储库中$HOME
.
该存储库可以驻留在任何地方。我有一个克隆$HOME
在我使用的每个主机上。
通过这种方式,我有一个更小的非嵌套工作树,可以有选择地跟踪点文件。
附注您可能想要添加条目,例如dotfiles/.config/*
to .gitignore
,它包含许多我不想跟踪的文件。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)