SVN 新的认识

创建分支

svn cp -m "create branch" http://svn_server/xxx_repository/trunk http://svn_server/xxx_repository/branches/br_feature001 

获得分支

svn co http://svn_server/xxx_repository/branches/br_feature001

合并版本前最好全部提交一下,保证SVN上面保持最新的代码

合并主干上的最新代码到分支上

cd 到分支目录

cd br_feature001 
svn merge http://svn_server/xxx_repository/trunk 

用merge命令合并 冲突全部选择p (推后处理) 完成之后打开Xcode去解决冲突
之后提交解决冲突之后的代码

分支合并到主干

一旦分支上的开发结束,分支上的代码需要合并到主干。SVN中执行该操作需要在trunk的工作目录下进行。命令如下:

1>合并版本并将合并后的结果应用到现有的分支上

svn -r 148:149 merge http://svn_server/xxx_repository/trunk
1, 查找到分支版本 
方法一:cd branch 
svn log --stop-on-copy 

最后一个r11340就是创建分支时的reversion
这一块获取的r11340是之后一个版本,也是创建当前分支的版本
方法二:cd trunk
命令:svn -q –stop-on-copy 分支URL,这条命令会查询出自创建分支以后分支上的所有修改,最下面的那个版本号就是我们要找的版本号.
示例:

svn log -q --stop-on-copy svn://192.168.1.177/tags/beta_2009_12_24 
2, 合并到主干 

命令:svn -r 分支版本号:HEAD 分支的URL
解释:HEAD为当前主干上的最新版本
示例:
cd trunk

svn merge -r 11340:HEAD svn://192.168.1.177/tags/beta_2009_12_24 

这里的11340就是刚才获取到的分支创建时候的版本
/*
cd到trunk目录下
1>分支合并到主干中完成后应当删该分支,因为在SVN中该分支已经不能进行刷新也不能合并到主干。

svn merge --reintegrate http://svn_server/xxx_repository/branches/br_feature001 
svn merge --reintegrate 分支url

*/

删除分支或tags

svn rm http://svn_server/xxx_repository/branches/br_feature001
svn rm http://svn_server/xxx_repository/tags/release-1.0

解决冲突提交的时候出现???这一类的情况的时候

在冲突发生时, 先可以用这些命令查看一下状态:
用svn status(st)查看哪些文件冲突了:

lishikejideiMac:OptimalShop JeanHead$ svn st
?     C 114x114.png
      >   local missing or deleted or moved away, incoming file delete or move upon merge
?     C 120x120.png
      >   local missing or deleted or moved away, incoming file delete or move upon merge
?     C 40x40.png
      >   local missing or deleted or moved away, incoming file delete or move upon merge
?     C 57x57.png
      >   local missing or deleted or moved away, incoming file delete or move upon merge
?     C 60x60.png
      >   local missing or deleted or moved away, incoming file delete or move upon merge
Summary of conflicts:
  Tree conflicts: 5
lishikejideiMac:OptimalShop JeanHead$

用svn info查看冲突信息:

lishikejideiMac:OptimalShop JeanHead$ svn info 114x114.png 
Path: 114x114.png
Name: 114x114.png
Repository Root: https://106.14.250.80/svn/ios_OptimalShop
Repository UUID: 0dbb9cbe-ded1-974b-adec-b5c9369b28f2
Node Kind: none
Schedule: normal
Tree conflict: local missing or deleted or moved away, incoming file delete or move upon merge
  Source  left: (file) ^/branch/huanxin/OptimalShop/OptimalShop/114x114.png@15
  Source right: (none) ^/branch/huanxin/OptimalShop/OptimalShop/114x114.png@17

冲突处理


文件被删除了, 但是还需要
服务端modified, 本地missing, 选择their conflict就可以了

svn resolve --accept=theirs-conflict file.c

本地modified, 服务端missing

svn resolve --accept=working file.c

例子:

lishikejideiMac:OptimalShop JeanHead$ svn resolve --accept=working 114x114.png 
Resolved conflicted state of '114x114.png'
lishikejideiMac:OptimalShop JeanHead$ svn resolve --accept=working 120x120.png 
Resolved conflicted state of '120x120.png'
lishikejideiMac:OptimalShop JeanHead$ svn resolve --accept=working 57x57.png 
Resolved conflicted state of '57x57.png'
lishikejideiMac:OptimalShop JeanHead$ svn resolve --accept=working 60x60.png 
Resolved conflicted state of '60x60.png'
lishikejideiMac:OptimalShop JeanHead$ svn resolve --accept=working 40x40.png 
Resolved conflicted state of '40x40.png'

之后重新添加

svn add 114x114.png
svn add 120x120.png
svn add 57x57.png
svn add 60x60.png
svn add 40x40.png
svn commit -m"add icon"

完成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值