简单的svn工作流程及命令行指令

2015-12-08  本文已影响2248人  小巷深深

svn可以对我们的代码进行系统的管理。主要功能就是保存所有的历史版本,方便回退版本,查看修改记录,保存版本防止丢失。
理想状态下,希望svn上的每一个版本拿下来都是可以正确运行的。所以建议大家提交代码要少量多次,每次修改一个功能就马上提交,可以避免修改太多导致合并出错或者遗漏。(如果一次修改的太多,合并代码时花费半天一天时间也是很正常的)

一、常用命令

二、svn提交建议

在多人共同修改同一个文件时很容易出现冲突。或者如xcode工程文件很复杂,容易将一些垃圾信息上传,所以建议svn目录和工作目录分开,使用比较工具合并代码,然后再提交。这样做虽然会浪费些时间,但可以最大限度保证提交代码的质量,在合并代码的时候还能review一下修改部分,发现一些错误。
根据我们现在的项目情况,建议操作流程如下:

  1. svn checkout 取下最新的版本(svn 版本)
  2. 将此版本复制一份到正在修改的工程下进行修改。(工作版本)
  3. 将svn版本更新(svn up)
  4. 使用比较工具将工作版本的修改合并到svn版本。合并完成后 svn st,确认所有修改的文件正确
  5. 在工程中添加删除文件都会修改工程文件,而工程文件不好合并,建议合并完代码后,在svn版本中打开工程文件,再执行一次删除或者添加文件的操作
  6. 在合并的时候有可能其他人已经提交了代码,所以在确认后再运行svn up,如果有冲突,将冲突代码下载下来,在工程中修改。然后再执行第四步
  7. 若没有冲突,使用svn commit -m “提交日志”将代码提交。

三、推荐工具

推荐几个比较好用的工具
windows:
tortoiseSVN,可以方便的查看修改的文件、提交日志、历史版本等。上面提到的svn up ,commit,log等命令在软件中都有菜单可以点击
beyondcompare3 一款非常优秀的二进制比较工具,可以比较任何文件,效率很高
mac
svn工具:versions,相比windows上的工具来说真是太难用了
命令行,上面提到的几个命令足以应付日常使用了,很方便,比那些工具好用太多了

比较工具:changes 目前只发现这一款还算可以,但效率就真不敢恭维了。还经常崩溃,聊胜于无吧
Xcode的代码比较,这个真是非常好用

希望以上建议能帮助大家正确的提交代码.有不对的地方请各位指正

我创建了一个QQ群,希望大家能本着互联网开放的心态,将遇到的问题和经验在群里分享,大家互相交流心得,共同提高。
群号:77311380

上一篇 下一篇

猜你喜欢

热点阅读