SVN是一种项目合作开发的软件,参与项目的人员可以在不同的地方实现文件和目录的超时空共享。
两个重要的概念:
1、配置库(Repository)
SVN的核心是配置库,储存所有的数据,配置库按照文件树形式储存数据-包括文件和目录,任意数量的客户端可以连接到配置库,读写这些文件。通过写数据,这些信息就会共享,别人可以看到这些信息;通过读数据,可以看到别人的修改。
打开VisualSVN Server,就可以看到配置库。
2、工作副本(WorkSpace)
每个人的工作空间,它是每个程序员工作的地方,程序员从配置库拿到源代码,放在本地作为工作副本,并对代码进行相应的修改和更新之后再交回到配置库中。
基本操作:
Check Out(检出)
将版本库中的内容检出到本地工作副本
Commit(提交)
将更改之后的文件提交到配置库中
Update(更新)
更新工作副本使其成为版本库中的最新版本
Show log (显示日志)
当我们修改文件后,文件的版本会自动更新,因此会形成日志
Revert(还原)
用于撤销操作,还原到之前的版本
在这种管理模式下,每个项目开发人员都可以从配置库中得到属于自己负责的那部分代码,保存在本地即工作副本。每个人都可以同时进行工作并互不干扰,最后把修改好的文件上传到原来的配置库中,各自的工作副本合并在一起成为最终的版本。这样,就是一个默认的“复制-修改-合并”工作模式。
工作流程:
但仅仅了解这个工作模式是不够的,如果不能清晰的了解它的具体工作流程的话,很可能会出现冲突等问题。
团队协同工作时,当多位团队成员同时修改同一个文件,造成本地文件与SVN系统中的文件版本不一致,而导致文件无法提交的情况,这就会产生冲突。为了更好更高效的合作,我们应该多去了解它的工作流程来避免冲突,如果避免不了,也要学着去解决。
学习还在继续……