版本控制-VisualSVNservice与TortoiseSVN

简介

版本控制分为多人协作与个人作业两种。

多人协作

多人协作版本控制需要有一个服务器建立仓库repository来保存、管理不同的版本,其作用细分为建立项目,建立用户,管理权限,分组控制等。服务器建立的用户包含用户名和密钥,用于远程用户登陆。服务器仓库repository使用VisualSVNservice建立,客户端文件使用TortoiseSVN建立。

多人协作

服务器搭建

  • 下载VisualSVNservice,安装
  • 打开VisualSVNserviceManager
    这里写图片描述
    *右击Repositorise选择create new repository
    这里写图片描述
    此处有两个选项
    这里写图片描述

建立服务器仓库repository - FSFS

  • 选择FSFS选项,点击下一步会提示输入repository name
    这里写图片描述
  • 下一步选择empty repository即可
    这里写图片描述
  • 下一步保持默认,create即可,可以在建立之后修改权限
    这里写图片描述
  • 建立test后,如下
    这里写图片描述

建立用户

  • 右击Users选项
    这里写图片描述
  • 选择create user
    这里写图片描述
    输入需要加入此项目的用户和密钥
    这里写图片描述

建立组group

  • 右击Groups,选择create group
    这里写图片描述
  • 输入group的名字,点击add按钮可以把之前建立的用户加入到group中
    这里写图片描述

项目人员分配

  • 右击test选择properties
    这里写图片描述
  • 点击add,可以添加group和user,添加之后可以在permissions处修改权限
  • 这里写图片描述

服务器地址

  • 右击test选择copy URL to Clipboard,把这个链接发给参与的user即可。
    这里写图片描述
    注意:复制之后格式是 { http://XXX-PC/svn/test/ },当所有成员都在同一个局域网中时,可以通过用户名直接查找到的,但是若不是同一局域网需要把用户名改成服务器的IP地址{http://192.168.XXX.XXX/svn/test/}即可。

服务器物理存储

  • 右击test选择properties
    这里写图片描述
  • 选择details可以查看存储位置等信息
    这里写图片描述
    如Path: G:\Repositories\test打开此位置可以查看到此文件夹。

到此服务器端仓库Repositories建立完成


客户端文件搭建

  • 下载TortoiseSVN,安装,安装完成对文件夹右击会有两个选项
    这里写图片描述
  • 和服务器连接需要先选择需要存放和同步文件的位置,需要一个文件夹如下,可根据自己需要选择合适的文件夹
    这里写图片描述
  • 右击该文件夹选择SVN checkout…出现下面对话框
    这里写图片描述
    在URL of repository输入框中输入服务器的地址{ http://XXX-PC/svn/test/ }
    checkout directory 输入框中是当前文件夹位置,其它可以保持默认即可。
    这里写图片描述
    OK即可。
    如果提示输入用户的话,输入服务器建立的用户名和密钥。

加入文件

  • 向该文件夹加入文件,若此文件需要上传到服务器,需要添加上传,操作为选中文件右击选add即可
    这里写图片描述
    add之前文件状态
    这里写图片描述
    add之后文件状态
    这里写图片描述
    文件夹之前状态
    add之后状态

添加文件上传服务器


  • 右击文件夹选择SVN Commit…
    这里写图片描述
  • 在recent message输入框中加入修改信息,方便自己和其他用户查看修改信息,changes mode输入框中可以选择要上传的文件。
    这里写图片描述

showlog可以查看修改历史
这里写图片描述
OK即可。
文件状态
这里写图片描述


* 此时的visualSVN server状态*
这里写图片描述

更新文件,保持与服务器同步

如果其它user上传了test3.txt文件,需要同步的,通过以下操作:
* 右击文件选择SVN update
这里写图片描述
这里写图片描述
OK即可。
此时文件夹更新为
这里写图片描述
服务器状态
这里写图片描述

不同的客户端可以通过以上方法上传和下载服务器端的文件。showlog功能可以查看修改信息。


更改登陆用户

tortoiseSVN在一台电脑上默认只输入一次用户登陆信息,系统会自动记录此次的登陆信息,若再次在本电脑上建立新文件夹,SVN checkout下载文件,是不会要求你重新输入用户名和密钥的,默认使用之前记录的用户信息,若需要修改登陆用户,要执行一下操作
* 同一台电脑上两个同一用户名的文件夹
这里写图片描述
* 修改testSVN2的用户为zhou,选择文件夹右击->tortoiseSVN->settings
这里写图片描述
* 选择saved Data ->clear
这里写图片描述
* 在出现的对话框中,勾选要清除的用户,确定即可
这里写图片描述
* 此时再次对该文件夹执行 右击->SVN Update,会出现新的用户登陆信息,输入新的用户名和密钥即可登陆。
这里写图片描述

冲突解决

多人协作,很容易出现冲突,TortoiseSVN提供了对应的解决方式。
冲突出现在,用户没用更新到最新文件,就修改了其它用户已经修改过得文件,此时在上传时即SVN commit…时会提示因为冲突而无法上传,需要打开冲突文件,解决冲突即可。
* 用户wang首先修改testSVN文件夹下的test1.txt并上传到服务器,同时用户zhou修改testSVN2文件夹下的test1.txt并试图上传到服务器
这里写图片描述
* 上传testSVN2文件夹时,检测到了冲突conflicted
这里写图片描述
* 点击showlog会出现,wang修改了此文件导致conflicted
这里写图片描述
* 点击确定之后再次上传,会出现test1.txt标红
这里写图片描述
* 双击标红的文件test1.txt,出现Edit界面
这里写图片描述
* 可以选择文件块右击选择放置位置,当然也可以手动编辑解决冲突
这里写图片描述
* 修改之后的文件,保存即可
这里写图片描述
* 此时上传界面红色文件标记已经消失,可以上传了
这里写图片描述

常出现的标志
无文件更新
这里写图片描述
文件被修改等待上传
这里写图片描述
文件冲突
这里写图片描述


个人作业

只需要安装有TortoiseSVN客户端即可实现。这种模式下repository在自己电脑上建立
这里写图片描述

建立本地仓库repository

*新建文件夹,执行一下操作
这里写图片描述
* 复制仓库地址,建立文件上传文件时使用,OK即可
这里写图片描述

建立本地上传文件夹


  • 建立同步上传文件夹localUser,右击->SVN Checkout…
    这里写图片描述
    *在出现的对话框中输入之前建立仓库的地址即可
    这里写图片描述

若之前未复制仓库地址可以通过,右击仓库文件夹->TortoiseSVN->Repo-browser,查看
这里写图片描述
这里写图片描述

对本地上传文件夹的使用方法同服务器中的本地文件夹使用方法一致


说明:
1. 仓库repository建立之后,不需要修改,通过客户上传和同步自动修改。
2. 服务器和客户端可以在同一台机器上,但是客户端和服务器是独立的,客户端需要用户名和密钥登陆。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章