zoukankan      html  css  js  c++  java
  • 版本管理工具SVN

    此文件根据慕课网 源生活老师的教学视频总结

    视频地址 http://www.imooc.com/learn/109

    一.SVN下载和安装配置

    服务端下载地址 https://www.visualsvn.com/server/download/

    客户端下载地址 https://tortoisesvn.net/downloads.html

    下载后两个文件

    1. 服务端安装

    除了下步的安装路径和仓库路径,其余都不用改,一路next

    2. 配置服务端

    (1)新建仓库

    仓库分可以为很多个,每个工程放在独立的仓库里

    在圆圈上右键,取名,一路next,就新建了一个仓库

    (2) 新增用户

    输入用户名和密码

    完成了服务端配置

    3. 安装和配置客户端

    除了安装目录,一路next

    安装后,在任意文件夹下右击鼠标 会发现多了一个checkOut功能

    此功能是第一次从SVN的某一个仓库下载时候需要用到的。

    点击此圆圈后,出现以下,需要输入服务端checkOut 的路径;

    先填写URL Repository

    此时回到服务端,点击要下载的仓库,右边出现了路径

    此时分两种情况:

    1. 客户端和服务端在一台电脑上:

    将该路径填写到URL Repository

    1. 客户端和服务端不在一台电脑上:将计算机名改成 服务端的IP:端口号

    此端口号就是服务端安装时候的端口号

     

    再填写checkOut Directory:就是你要下载到哪

    第一次下载时候,需要输入用户名密码,就是上面在服务端建立的

    下载完成后,下载地址下自动多了一个文件夹

    点开,如果显示是空的,对win10 参考http://jingyan.baidu.com/album/acf728fd2853fef8e410a37f.html?picindex=4

    文件夹可见了 如下:

    此文件夹不要删,删了就废了,就成了普通文件夹,不可与服务端联系了。

    在此文件夹下 可以进行对客户端的操作:增删改。。。

    二.SVN基本操作

    1. 新建文件

    在刚刚下载的文件下新建一个文件test.java

    此文件夹下 右键,如下

    看服务端 刷新一下Test 看到提交成功了。

    2. 删除文件

    如果想删除,就在磁盘下删除,但不属于svn操作

    试着删除一下此文件,再提交一下svn可以看到 文件missing了,如果提交给服务端,服务端的文件也就被删了。

    3.修改文件

    下面的大圆区域是 本次修改的说明,让别人知道你为啥改了。

    改后提交,在服务端如下操作:

    在浏览器中出现:

    验证身份后,就可以看到修改后的代码

    三.常见问题

    很多小伙伴都有对Test仓库操作的权限

    比如,

    B将文件改完,提交了,A在自己的文件中,update了,发现自己的代码被别人改了,自己的代码也找不回来了,这时 SVN就可以让你知道谁动了这个代码,怎样找回代码!

    这就是历史记录!看到了元凶

    想恢复到某个版本:

    本地再update就好啦!

    如果小伙伴误删了代码,在Test文件夹下showLog

    直接将该版本保存到你的文件夹里

    1.SVN自动合并

    A B同时下载最新文件,各自修改后,B先提交了,A再提交时,就会失败,需要update,这时 再提交的代码就是SVN自动合并后的代码。

    如果AB不在同一行修改的,这就很不错

    但如果是在同一行代码里改的,提交之前,文件夹里会多出三个文件这时就不要提交了!SVN不知道怎么合并了。

    现在打开你的文件(1),里面已经标识好了,哪里有问题:最新的代码是啥样的,你要与最新的作者去商量。

    出现的三个文件里,(2)Test.java.mine 是本人的代码。后面的两个(3)(4),是最新的两个版本的代码,后缀都有版本号。(4)是最新的版本。

    商量好了,

    如果商量结果是你的代码,不要在(1)里改,因为里面自动生成了代码,改起来很麻烦。只需要将后缀为mine的文件(2)覆盖掉(1)即可(改后缀名)

    如果商量结果是(4),在(1)上,右键,

    2.代码对比

    复制自己的代码到别处

    Revert到之前的版本

    更新

    将自己之前的代码改个名字,复制到svn文件夹下,选中两个文件,对比

    去商量问题吧,改完后提交,删掉自己原来的文件。

    又一种情况:
    A没有发现B改了代码,继续在B的上面改了,埋下隐患。B也这样。

    后来A发现了这个问题,此时,已经过去了很多版。要去找B商量。

     

    要Show log,在log里一版一版地对比即可。

  • 相关阅读:
    [置顶] 怎么对待重复的代码
    AIX和Linux中wtmp的不同处理方式
    Visio 下载,及密钥
    全局变量和局部变量
    UNIX网络编程--IPV4 IPV6 ICMPV4 ICMPV6
    Android XML文档解析(一)——SAX解析
    rnqoj-30- [stupid]愚蠢的矿工-树形DP
    linux 文件内容的复制
    主流视音频平台参数
    FTP原理
  • 原文地址:https://www.cnblogs.com/xy123001/p/5218623.html
Copyright © 2011-2022 走看看