SVN版本控制工具的使用

时间:2021-07-17 15:23:10
  • SVN  
  • 1、  基本介绍  
  • SVN,即Subversion,是一个*开源的版本控制系统,可以将代码恢复到早期版本,或者检查数据修改的历史,这些数据可以是源代码,也可以是其他类型的文件。  
  • 功能:  
  • 1) 根据文件修改的次数自动增加版本号以便找回历史文件  
  • 2) 防止多人开发时同时修改一类文件导致覆盖或者被删除  
  •   
  • 常见图标:  
  • 1) 对号:版本正常  
  • 2) 感叹号:从服务器同步后有修改但是还没有上传到服务器  
  • 3) 问号:新建了一个文件但是服务器还不认识他  
  • 4) 加号:已经添加到观察名单但是还没上传到服务器  
  • 5) 锁:加锁  
  • 2、  服务器/客户端搭建步骤  
  • 服务器端搭建  
  • 1) 在E盘新建空文件夹SVN_Server  
  • 2) 右击->TortoiseSVN->Create repository here(创建版本库)  
  • 3) 进入conf文件夹,打开passwd,加上liupeng = liupeng  
  • 4) 打开svnserve.conf,将# password-db = passwd前的空格和#号删除,保存  
  • 5) 打开服务,启动dos,输入svnserve.exe -d -r E:\SVN_Server  
  •   
  • 客户端搭建(可以直接使用下载文件的步骤)  
  • 6) 在F盘新建空文件夹SVN_Client  
  • 7) 右击-> TortoiseSVN->Repo-Brower  
  • 8) 弹出框,输入svn://127.0.0.1,确定  
  • 9) 右击->SVN Checkout->OK  
  •   
  • SVN上传文件  
  • 10)    拷入三个文件123.txt  
  • 11)    右击1.txt-> TortoiseSVN->Add  
  • 12)    右击1.txt->SVN  Commit…->确定(如果修改了1.txt,再重新执行commit即可)  
  • 1112步骤可以该为在空白处直接SVN  Commit,选择需要提交的文件)  
  •   
  • SVN下载文件  
  • 13)    在F盘新建空文件夹SVN_Client  
  • 14)    右击->SVN Checkout->OK(协议那栏注意不加文件名称)  
  • 15)    第二次下载的时候就叫做SVN Update   
  •   
  • 3、  客户端  
  • 1、文件删除  
  •     (1)删除一个文件  
  •     (2)提交 (选择删除的文件)  
  • 2、历史版本的找回  
  •     (1)右击-> TortoiseSVN->Update to revision…  
  •     (2)弹出框选择第二个Revision,写上想要回到的版本号,确定  
  • 3、历史版本间差异的对比  
  •     (1)client1中down一个文件并且修改提交  
  •     (2)client2中同样down这个文件并且修改提交  
  •     (3)在回到client1中更新这个文件  
  •     (4)选择文件,右击-> TortoiseSVN->Diff with previsious version  
  • 3、冲突解决  
  •     (1)client1和client2中存在版本号一样的相同文件  
  •     (2)同时对其进行更改,client1先提交  
  •     (3)client2再提交,会出现问题  
  •     (4)此时应该先将client2进行update,生成一堆  
  •     (5)右击client2中的冲突文件-> TortoiseSVN->Edit Conflicts-<右击修改  
  •     (6)右击client2中的冲突文件-> TortoiseSVN->Resolved->commit  
  •     (7)回到client1中更新即可  
  •   
  • 4、  服务器端  
  • 1、  将启动SVN服务加到自启动中  
  • sc  create  svnserve   binpath=   “D:\Program Files\Subversion\bin\svnserve.exe”    --service  --root  E:\SVN_Server  
  •   
  • 2、  取消记住用户名  
  • 进入C:\Users\liupeng\AppData\Roaming\Subversion,删除auth文件夹即可  
  •   
  •   
  • 3、  权限控制  
  • 1、默认情况下匿名用户也可以浏览并且下载服务器端的东西,进入E:\SVN_Server\conf里面,打开svnserve.conf,将anon-access前的空格和#号删除,并且将参数改为none  
  •     2、(1)进入E:\SVN_Server\conf\svnserve.conf,将authz-db前的空格和#删除  
  • 2)打开E:\SVN_Server\conf\authz,加入红色部分  
  • [groups]  
  • admin = liupeng  
  • # harry_and_sally = harry,sally  
  • # harry_sally_and_joe = harry,sally,&joe  
  •   
  • [/]  
  • @admin = rw  
  • pbj = rw  
  • * = r