svn命令行笔记(基于mac)

xcode自带的svn用的太痛苦了,果断的弃用;改用mac自带的svn命令行

1、将文件checkout到本地目录 

svn checkout path(path是服务器上的目录) 

2、往版本库中添加新的文件 
 svn add file 

3、更新到某个版本

svn update -r 200 test.c

svn update不带参数,默认把当前目录下所有文件更新到最新版本

4、查看文件或者目录状态 
  1)svn status path(目录下的文件和子目录的状态,正常状态不显示) 
   【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】 

5、删除文件 
  svn del (rm)

删除后需要svn ci提交

8、查看日志 
  svn log path

9、查看文件以及配置库详细信息 
 svn info path  
 

10、比较差异 
  svn diff path


1、配置svn ignores

路径:

可以用 open -e 打开文本文件 ~/.subversion/config

找到这一行:#global-ignores,打开注释,然后你就可以添加你想要忽略的文件了

例如:global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.pyc *.pyo .*.swp .DS_Store

2、配置svn提交时编辑器

找到~/.bash_profile文件,添加
export SVN_EDITOR=vim


4、解决冲突

svn update

编辑代码

svn resolved


3、代码回滚

第一种情况未提交的代码: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。
   将以上操作总结为三条如下:
   1. svn update,svn log,找到最新版本(latest revision)
   2. 找到自己想要回滚的版本号(rollbak revision)
   3. 用svn merge来回滚: svn merge -r : something

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值