我已经将整个$HOME
目录签入Subversion 多年了。其中包括我的所有dotfile和应用程序配置文件,许多脚本,工具和黑客工具,我偏爱的基本主目录结构,一些怪异项目以及大量随机数据仓库。这是一件好事。虽然持续了。
但这已经失控了。在许多系统上,基本的结帐方法是相同的,但并不是所有的东西都适合我的所有机器。在不同的发行版中,它甚至都不能很好地发挥作用。
我正在清理房子-将数据分离出来,将一些脚本拆分为单独的项目,修复一些应该自动化的东西中的损坏链接,等等。
我的意图是将替换为,subversion
以git
进行的顶级检出$HOME
,但我想将其简化为我想在所有系统上拥有的东西,包括点文件,一些目录和一些基本的自定义脚本。
在线阅读时,很多人似乎正在使用symlink方法进行此操作:克隆到子目录中,然后从$HOME
存储库中创建符号链接。在$HOME
完全版本控制下的十多年中,我不喜欢这种方法的想法,而且我无法弄清为什么人们似乎不喜欢直接签出方法。我需要了解特定于git
顶级结帐的陷阱$HOME
吗?
PS部分是作为良好编码的练习,我还计划在github上公开我的root checkout。令人震惊的是,我允许在不经考虑就共享的文件中收集了多少安全敏感信息!WiFi密码,未口令的RSA密钥等。
git
会将文件的权限更改为签出后的权限,644
这对于诸如ssh私钥之类的事情是不利的。但是,这etckeeper
是一种使用git对/ etc /权限的解决方案
.zshrc
,.vimrc
和类似的事情,而不必首先它们进行消毒!