实际证明svn是不适合大项目做事的,相比perforce和git都是差的很远,估计要逐渐消失了。
现在的情况是,连线下使用perforce,由于有离线工作的需要,所以离线情况使用git,中间的载体是移动硬盘。
必须说perforce和git分别是两种version control方面(perforce连线情况下的,git是离线情况下的)的王者。
perforce可以另建一个workspace到移动硬盘上,sync代码数据作为专门的中间载体,离线情况使用git,建立本地的一个repot,并把数据添加进去,项目比较大的话就需要压缩了。
在离线电脑上,使用移动硬盘工作还是太慢了,最好本地有ssd的硬盘,在ssd上建立一个git repo,从移动硬盘pull过来。
本地修改并commit到ssd上的这个repo。
所有工作完毕之后,在移动硬盘上的git repo上把改动从ssd上的git repo pull过来。
这里不能从ssd那里push,因为移动硬盘那个不是bare repo,具体可以看一下stackoverflow上的解释,专门建立一个bare repo没必要也太麻烦,所以直接从移动硬盘的git repo上pull是比较好的。
然后回到连线情况,这里有两个选择:
这样不管是离线还是连线都可以不停的提交,而且所有记录都在,想revert就revert,很是方便。
一些比较有用的命令:记录在这里了:http://blog.csdn.net/ccanan/article/details/7922599
git在vs上的一些插件,也在逐渐进步,可以看一下这里:http://blog.csdn.net/ccanan/article/details/6033253
但是说回来,和大多数编程类的东西一样,使用熟悉了还是命令行的最好用,速度也快,gui的是不是的就卡在那里,不知所云。