多亏了这里的推荐,我已经开始使用非常方便的GNU Stow对我的各种点文件进行版本控制和同步。
但是,我不确定如何正确存放我的 .bashrc 以在计算机之间进行同步,因为它包含我显然不想同步的特定于机器的 PATH 行。在同步点文件时是否有适当的方法来处理这些类型的机器特定行?
多亏了这里的推荐,我已经开始使用非常方便的GNU Stow对我的各种点文件进行版本控制和同步。
但是,我不确定如何正确存放我的 .bashrc 以在计算机之间进行同步,因为它包含我显然不想同步的特定于机器的 PATH 行。在同步点文件时是否有适当的方法来处理这些类型的机器特定行?
机器特定的设置应该隔离到一个单独的文件中,该文件可以来自.bashrc
. 所以你.bashrc
可能包含一行
[[ -f .bashrc.local ]] && . .bashrc.local
然后任何特定于本地机器的东西,而不是打算在机器之间共享的东西,都将被放入.bashrc.local
。只会.bashrc
同步。
如果您不想将所有特定于机器的设置隔离到共享.bashrc
文件中的一个点,这确实会带来困难。.bashrc
另一种方法是用条件代码填充您的共享文件,例如
case $HOST in
machineA ) do-this ;;
machineB ) do-that ;;
* ) default-behavior ;;
esac
它考虑了当前值$HOST
。