zoukankan      html  css  js  c++  java
  • SVN 使用的简单整理

    1. 在SVN服务器上创建存储Dir,并和个人主机建立联系。
     
       现在SVN服务器上创建一个存储文件夹svn_storeDir.然后在个人电脑上建立一个本地文件夹local_Dir.
       进入到local_Dir文件夹下,使用svn软件的checkOut功能,将svn_storeDir的内容检出到本地文件夹下。就
       可以让本地和SVN服务器建立联系了。
    可以使用如下的命令:
    svn checkout svn://192.168.0.252/Release  ./
     
     
    2. 每天开始工作之前,需要先更新本地文件到最新的版本。需要使用SVN的update功能。
    可以使用如下命令:
    svn update
     
     
    3. 在本地文件夹下添加文件后,就可以使用SVN的commit功能,实时提交备份了。
    svn add ssDir
    svn commit -m "I add a dir to localDir"  ssDir //有些版本的svn提交是必须要添加日志的
     
    以后,如果你修改了 之前提交过的一个文件或者多个文件,直接提交即可
    svn commit -m "I edit some files for a  new function"
     
    4. 在本地文件夹下删除文件。
    svn rm ssDir
    svn commit -m "I delete a dir to localDir" 
     
     
    5. 查看所有日志 
    svn log
    svn log -r 5:19    # shows logs 5 through 19 in chronological order
    svn log -r 19:5    # shows logs 5 through 19 in reverse order
    svn log -r 8       # shows log for revision 8
    svn log -r {2015-07-31}:{2015-06-01}      #指定日期查看 svn 日志,且将新日志显示在前面    
    更新到 0xxx版本
    svn update -r 0xxx 
     
    6.导出文件: 使用该命令是不会拷贝 .svn 的
    svn export [-r REV] URL[@PEGREV] [PATH]
    svn export -r 68217 svn://192.168.0.252/CCDT2010/Firmware/demo2  ./
    svn export -r 68217 svn://192.168.0.252/CCDT2010/Firmware/demo1.txt  ./demo1_68217.txt
     
    7.  svn 代码回滚命令,取消对代码的修改分为两种情况:

    第一种情况:改动没有被提交(commit)。
    这种情况下,使用svn revert就能取消之前的修改。
    svn revert用法如下:
    # svn revert [-R] something
    其中something可以是(目录或文件的)相对路径也可以是绝对路径。
    当something为单个文件时,直接svn revert something就行了;当something为目录时,需要加上参数-R(Recursive,递归),否则只会将something这个目录的改动。
    在这种情况下也可以使用svn update命令来取消对之前的修改,但不建议使用。因为svn update会去连接仓库服务器,耗费时间。
    注意:svn revert本身有固有的危险,因为它的目的是放弃未提交的修改。一旦你选择了恢复,Subversion没有方法找回未提交的修改。
     
    如果你要还原多个文件或者多级子目录下的问题,可以直接使用如下命令:
    svn  revert   */**/*                           
     
    第二种情况:改动已经被提交(commit)。
    这种情况下,用svn merge命令来进行回滚。 
       回滚的操作过程如下: 
       1> 保证我们拿到的是最新代码: 
         svn update 
         假设最新版本号是28。 
       2> 然后找出要回滚的确切版本号: 
         svn log [something]
         假设根据svn log日志查出要回滚的版本号是25,此处的something可以是文件、目录或整个项目
         如果想要更详细的了解情况,可以使用svn diff -r 28:25 [something]
       3> 回滚到版本号25:
           svn merge -r 28:25 something
         为了保险起见,再次确认回滚的结果:
           svn diff [something]
         发现正确无误,提交。
       4> 提交回滚:
         svn commit -m "Revert revision from r28 to r25,because of ..." 
         提交后版本变成了29。
       将以上操作总结为三条如下:
       a>  svn update,svn log,找到最新版本(latest revision)
       b> 找到自己想要回滚的版本号(rollbak revision)
       c>  用svn merge来回滚: svn merge -r : something
     
    8. 为代码建立分支
      如果想在代码中增加一个功能强大的函数,但暂时不想提交到主仓库上,害怕影响到别人的工作。那么可以给主仓库代码 建立一个分支,然后将分支 下载到本地,就可以修改了。
      等测试确认OK后,再提交到 主仓库中。
      svn cp -m "creat vbase_branch"  svn://172.16.0.26/trunk/Vbase  svn://172.16.0.26/wangwj/workDir/branch/vbase_branch
      svn checkout  svn://172.16.0.26/wangwj/workDir/branch/vbase_branch ./
     
    9.其他常用的svn 常用的命令:
    svn list svn://192.168.0.252/CCDT2010/Firmware/Tuner/Release/v25/T221_V25.01.01.0002
    svn delete svn://192.168.0.252/CCDT2010/Firmware/Tuner/Release/v25/T221_V25.01.01.0002/x
    svn diff -r id1:id2 fileName
  • 相关阅读:
    Ubuntu oracle SDK替换OpenJDK
    用update-alternatives管理java版本
    安卓配置
    CS 159: Advanced Topics in Machine Learning: Structured Prediction
    ros bag 代码操作
    vim 方式快捷编辑代码
    文件权限
    操作系统连不上网
    github权限管理
    nmap基本命令使用
  • 原文地址:https://www.cnblogs.com/jyfyonghu/p/4742270.html
Copyright © 2011-2022 走看看