SVN工具常用功能总结
使用SVN作为版本管理工具,可以使用VisualSVN Server+TortoiseSVN搭建SVN版本控制系统,组长安装VisualSVN Server,组员安装TortoiseSVN。
TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,VisualSVN是收费的,而VisualSVN Server是免费的。VisualSVN是SVN的客户端,和Visual Studio集成在一起, VisualSvn Server是SVN的服务器端,VisualSVN Server和TortoiseSVN可以搭配使用。对于安装VisualSVN Server及其搭建的方法博客园里已经有很多文章,写的比我详细还比我好,比如这篇文章:https://www.cnblogs.com/xing901022/p/4399382.html。
VisualSVN Server点击版本库所在目录右键可以选择copy URL to clipboard,然后让组长把复制好的版本库地址发给你。本地选择某盘新建一个文件夹,鼠标右键TortoiseSVN>Relocate...,如图1已选择的所示。(以下皆以TortoiseSVN的1.12版本截图举例)
图1 TortoiseSVN的选项,当前选中Relocate...
然后将之前提供给你的仓库地址添加进去,注意两点:1.组长和组员之间必须在同一个局域网下,2.将组长提供给你的URL地址中的主机名称换为对应的IP地址。如图2红框所示:
图2 Relocate...的对话框
文件夹下显示红色感叹号,说明你修改过这个文件夹内的文件的内容,和版本库中的最新版本有区别。反之,绿色打勾则表示没有经过修改,如图3所示。由于从事前端,所以我只需要在static文件夹里进行SVN Update和更新SVN Commit即可,其他的文件,例如本机代理转发配置的devServer文件夹就没必要更新到版本库了。这里注意两点:1.由于很多人共同使用版本控制系统,所以,同样的文件可能会有几个人同时进行编辑。这样,他们在一起提交的时候会出现冲突,所以,我们应该避免这一点,在修改BUG之前先约定谁人修改,这不仅仅是避免冲突,还节约了人力。2.SVN Commit之前要先SVN Update,这点很重要,以保证你的文件和版本库的文件是同步更新的。
图3 文件夹出现红色感叹号和绿色打勾
如果不知道修改了哪些文件,可以一直顺着红色感叹号文件夹点击到文件末端就可以知道是哪些文件进行了修改,如图4所示。点到最后知道是permissionManage.html这个文件进行了修改。但是如果想要知道文件内修改了什么,就必须点击该文件右键TortoiseSVN>show Diff显示。如图5所示:左边橙色的为版本库最新版本,右边金色的为本地现版本,可以看到这两个版本(也只能是这两)之后所有的修改位置。
图4 permissionManage.html页面进行过修改
图5 permissionManage.html页面内容被修改的位置
从TortoiseSVN>Show log可以看出每次版本里的所修改的文件。如下图6所示,红框中的文件为此次版本中求改的文件,点击此文件出现如图5的效果。
关于TortoiseSVN分支和合并可以看下这篇文章:https://blog.csdn.net/justry_deng/article/details/82259470。SVN相比于Git,最大的优点就是同一个局域网下,无需网络就可以提交,其他优点仍在挖掘中。