SVN的使用

2016-09-29  本文已影响0人  MasterChen

安装及使用VisualSVN-Server(SVN服务器工具)

SVN是一款集中式版本库控制工具
VisualSVN-Server及Cornerstone下载链接

VisualSVN-Server的安装及使用

  1. 在windows平台上安装VisualSVN-Server图解:
    <pre>


    安装图步骤1.png
    安装图步骤2.png
    安装图步骤3.png
    安装图步骤4.png
    安装图步骤5.png
    安装图步骤6.png
    安装图步骤7.png

由于软件不会自己创建快捷方式,为了简单操作,可以自己创建快捷方式:

创建快捷方式.png

</pre>

2 . VisualSVN-Server常见操作图解
<pre>

  1. 创建仓库图解


    创建一个新的仓库步骤1.png
    创建一个新的仓库步骤2.png
    创建一个新的仓库步骤3.png
    创建一个新的仓库步骤4.png
    创建一个新的仓库步骤5.png
  2. 在仓库中创建新文件夹


    在仓库中创建文件夹.png
  3. 创建新用户


    创建新用户1.png
    创建新用户2.png
  4. 添加分组


    添加分组1.png
    添加分组2.png
  5. 设置读写权限


    设置读写权限.png

    </pre>

SVN初始化项目及常用操作

  1. 将服务器已有的内容下载到本地(提示:checkout(co)之后,命令行会记录用户名和密码,后续操作不用再另行指定)checkout==co
    <pre>
    $ svn checkout https://172.16.83.128/svn/ingke/ --username=用户名 --password=密码
    </pre>

错误提示:"is not a working copy",必须在svn的工作目录下才能正确使用svn的命令
如果出现https://协议问题,在问题代码后直接键入p 按回车

  1. 初始化项目
  • 进入工作目录 (含有.svn文件夹的目录)
  1. 将初始化的项目添加到本地代码仓库中
    svn add 文件名
  2. 将文件提交到服务器(commit==ci
    svn commit -m "注释"
  3. 参看本地代码库状态
   svn status / svn st 显示的文件状态(`st==status`)

状态码 描述文字

  1. 空白 没有修改

  2. A 文件已被添加到本地仓库管理中,但是还未添加到服务器中(服务器的仓库还未管理该文件)

  3. C 冲突

  4. D 该文件已经在本地被删除,但还没有将删除操作共享给服务器

  5. I 被忽略

  6. M 文件已经被本地管理,并且服务器也有该文件,但是新修改的修改内容没有被提交到服务器

  7. R 被替换

  8. X 外部定义创建的版本目录

  9. ? svn不识别该文件,或者该文件被删除过,或者该文件是新添加的文件,还没有被本地代码仓库进行管理

  10. ! 文件丢失或者不完整(不是通过svn命令删除的文件)

  11. ~ 受控文件被其他文件阻隔

  12. 个人基本操作

  1. 修改文件之后,使用svn commit -m "注释"重新提交到服务器
  1. 删除文件(一定要使用svn操作指令删除文件)
    svn remove 文件名 (remove==rm==delete==del)

  2. 撤销修改:$ svn revert 文件名

  3. 多人开发

  1. svn update 从服务器上下载更新最新的内容
  1. 错误提示out of date 表示文件过期 (不能提交代码的情况:当本地的版本号小于服务器的版本号时,不能进行提交)
  2. 错误提示Conflict discovered in '冲突路径'

冲突解决选项:

1. 常用选项:
  (p) postpone  :生成文件,让使用者对比冲突,手动修改,(修改完成后,使用代码:`svn resolved 文件名` 删除生成的多余文件)
postpone选项在冲突位置的格式.png

(mc) mine-conflict :使用我的代码覆盖服务器的代码
(tc) theirs-conflict :使用服务器的代码覆盖我的代码

2.不常用选像
  (e) edit :在命令行中编辑文件
  (df) diff-full : 在命令行中展示所有的不同
  (s) show all options   :重新展示所有选项

svn版本回退操作(借鉴crazy hacking的专栏

  1. 查看之前更新过的版本
    $ svn log //查看svn日志
    $ svn log filename //查看某一个文件的日志
    $ svn log filename@1 //查看某一个文件某一个版本的日志

  2. 更新到之前某个版本
    $ svn update -r 版本号

  3. 使服务器恢复到之前某个版本

1). 使用svn update -r 版本号回到之前版本,查看是否是我们需要的版本
2). 使用svn update 回到最新版本
3). 将最新版本合并到某一个版本svn merge -r 最新版本号:回退版本号 希望回退的文件名
4). 使用svn ci -m "注释"重新提交改变服务器文件内容
注意:还可以使用svn merge --dry-run来模拟假装merge一下,看一下merge会发生什么,而不是真正的做这个动作。
svn merge --dry-run -r:2011:2010 http://my.repository.com/my/project/trunk
svn merge -r:2011:2010 http://my.repository.com/my/project/trunk
svn commit -m "Reverted to revision 2010."

  1. 使用cornerstone实现版本回退
    IOS开发中,SVN如何恢复到某一个版本(以Cornerstone为例)
上一篇 下一篇

猜你喜欢

热点阅读