svn 管理bashrc的问题

我的.bashrc文件是通过svn管理的,

做法是在

repo/config/.bashrc为原始文件

ln repo/config/.bashrc  ~/.bashrc

但是这样的话,如果在某个机器上svn update会更新repo/config/.bashrc

但是~/.bashrc没有更新,究其原因:

是在svn update 的时候,先会把repo/config/.bashrc和update消息merge,生成一个临时文件,

然后rename 临时文件 为 repo/config/.bashrc,这样原来的ln信息就丢了.

这是通过strace观察到的:

rename("config/bash/tempfile.tmp", "config/bash/.bashrc") = 0


我现在的做法是:

ln -s repo/config/.bashrc  ~/.bashrc

解决了问题。

猜你喜欢

转载自idning.iteye.com/blog/813751