1
dongsheng 2013-09-24 08:01:33 +08:00
用Dropbox同步,还有个Raspberry Pi是用BTSync同步过去的。
环境变量主要是bashrc/zshrc的问题吧,我是把所以机器公用的部分写到profile.sh,然后在主rc文件里激活它。 |
2
xell 2013-09-24 10:50:34 +08:00
楼上似乎没有理解楼主的意思,我来说说我的情况。
我曾经在三个颇为不同的多环境中并行工作(Windows/Cygwin,Mac,Ubuntu),也是用 git 维护,也是面对着分支合并修改等等带来的混乱。我记忆犹新的是维护 .vimrc 时候的惨状:写了无数的 if 来区分各种情况。 然后捏……然后我开始唯一地使用 Mac,丢掉其他两个平台,世界清净了。 我知道上述回答实属坑爹,但我想传达的意思就是这个:目前真的没有什么好方案,因为这其实并不是软件的问题,而是人的需求的问题。其实 git 已经很强大了,如果有心,写些 pre/post-hook 可以以自动化方式应对很多 merge 前后的问题,时常 rebase 一下解决 history 紊乱等等。但无论如何都相当耗费时间精力。所以,如果是硬需求,那就使用(各类)脚本去尽量让电脑帮你完成同步维护的核心工作吧。如果像我这种可以自行决定的,那就坚守一个环境(甚至一台硬件:是的,我只在一台电脑+nas上工作,因此连 dropbox 都不需要)好了。 说白了,我的建设性意见也就是 git 加上各类脚本,没有更好的。看看其他高手有啥好方案不? |
3
HowardMei 2013-09-24 12:03:07 +08:00
有时候repeat yourself是最实用的解决方案,两个文件夹:available enabled
其它不在这两个地方的也都是软链接搞定,然后尽量多用Ansible/Salt这样的工具替代脚本, 有必要为个最常规的任务,搞那么复杂分支么? |
4
tywtyw2002 OP @xell 一直很头疼呀,有些配置文件好像不支持if吧?
我在用if 都是直接在$HOME下touch一个新文件去作为区别。。。。 很多环境的配置也不同,lab的机器nfs share $home, 然后软件安装位置也头疼。 |
5
tywtyw2002 OP @HowardMei 问题的关键是变量不同。。。 比如zsh的位置等等,有几个环境是实验/测试,在那些机器上我都没有root权限的
|