今天我决定在存储库中管理和推送我的点文件。动机是在多台 mac 机器和 ubuntu 服务器机器上重用相同的点文件。
我目前已经想到了这个结构:
├── bash
│ ├── aliases
│ ├── config
│ └── env
├── bash_profile
├── bashrc
├── hgrc
├── src
│ └── link.py
└── vimrc
link.py
运行并为该存储库克隆到的任何位置创建bashrc
符号bash_profile
链接~
。
问题:1
我的bashrc
内容:
source bash/env
source bash/config
source bash/aliases
问题是因为路径是相对的,找不到文件。我不想使用绝对路径,因为这样我就失去了在我喜欢的任何地方克隆存储库的灵活性。
同样,我的bash_profile
内容:
source ./bashrc # same problem!
source ~/.bashrc
因为我以前符号链接~/.bashrc
到dotfiles/bashrc
我可以到达它。但这对我来说仍然像是一个肮脏的黑客。
问题:2
我应该在哪里保留对特定机器定制的路径。当然,我不想将它们放在存储库中,也不想弄乱其他所有系统。目前我的自定义路径在~/.profile
. 我正在考虑从中获取它bash/env
以if
检查它是否存在然后使用它,否则不使用它。
希望听到更好的方法