svn常用命令与分支操作

  svn基本使用

1. 创建版本库:

Java代码
  1. Svnadmin create repos  
Svnadmin create repos

2. 修改配置文件
Auth文件   

Java代码
  1. [groups]   
  2. admin=shguo   
  3. [/]   
  4. @admin=rw   
  5. *=r  
[groups]
admin=shguo
[/]
@admin=rw
*=r


Passwd文件
Java代码
  1. [users]   
  2. shguo=shguo  
[users]
shguo=shguo


Svnserve.conf文件
Java代码
  1. anon-access = read   
  2. auth-access = write   
  3. password-db = passwd   
  4. authz-db = authz  
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

注意:要去掉前面的空格不然会报,认证配置失败
3. 启动:

Java代码
  1. svnserve –d –r repos  
svnserve –d –r repos


4. 创建目录
Java代码
  1. Svn mkdir svn://127.0.0.1/repos/ -m “mkdir”   
  2. Svn mkdir svn://127.0.0.1/repos/sns/  -m “mkdir”   
  3. Svn mkdir svn://127.0.0.1/repos/sns/trunk  -m “mkdir”   
  4. Svn mkdir svn://127.0.0.1/repos/sns/branches -m “mkdir”   
  5. Svn mkdir svn://127.0.0.1/repos/sns/tags  -m “mkdir”  
Svn mkdir svn://127.0.0.1/repos/ -m “mkdir”
Svn mkdir svn://127.0.0.1/repos/sns/  -m “mkdir”
Svn mkdir svn://127.0.0.1/repos/sns/trunk  -m “mkdir”
Svn mkdir svn://127.0.0.1/repos/sns/branches -m “mkdir”
Svn mkdir svn://127.0.0.1/repos/sns/tags  -m “mkdir”

5. 导入项目:
Java代码
  1. Svn import sns svn://127.0.0.1/repos/sns/trunk/ –m “init project”   
  2. 查看:svn list svn://127.0.0.1/repos/sns/trunk/  
Svn import sns svn://127.0.0.1/repos/sns/trunk/ –m “init project”
查看:svn list svn://127.0.0.1/repos/sns/trunk/


6. 导出项目开发:
Java代码
  1. Svn checkout svn://127.0.0.1/repos/sns/trunk/ sns  
Svn checkout svn://127.0.0.1/repos/sns/trunk/ sns

7. 进入目录就可以进行开发操作了
Java代码
  1. Cd sns   
  2. Svn status   
  3. Svn add  new.txt   
  4. Svn commit –m ‘commit’  
Cd sns
Svn status
Svn add  new.txt
Svn commit –m ‘commit’

Svn log new.txt
其它一些命令:
Java代码 
  1. Svn update    
  2. Svn diff –r m:n path   
  3. Svn lock some.java or svn unlock some.java   
  4. Svn revert    
  5. Svn add /delete / copy / move   
  6. Svn switch –relocate svn://xxxx/one   svn://xxxx/two   
  7. Svn list path  
Svn update 
Svn diff –r m:n path
Svn lock some.java or svn unlock some.java
Svn revert 
Svn add /delete / copy / move
Svn switch –relocate svn://xxxx/one   svn://xxxx/two
Svn list path


Svn中分支的使用
1. 创建分支

Java代码
  1. Svn cp    
  2. http://svn.shguo.com/repos/sns/trunk/  http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo   
  3.  -m “shguo_branch”  
Svn cp 
http://svn.shguo.com/repos/sns/trunk/  http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo
 -m “shguo_branch”

也可以通过 TortoiseSVN 中的Branch/tag来创建分支

2. 取出分支来开发

Java代码
  1. Svn co    
  2. http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo    
  3. 101128_sns_imageUpload_shguo  
Svn co 
http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo 
101128_sns_imageUpload_shguo

3. 开发完成后向主干提交

检查需要合并的分支的历史:
Java代码
 
svn log --stop-on-copy -q    
  1. http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo  
svn log --stop-on-copy -q 
http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo


合并:
Java代码
 
svn merge –r   
  1. 16:HEAD    
  2. http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo  
svn merge –r
16:HEAD 
http://svn.shguo.com/repos/sns/branches/101128_sns_imageUpload_shguo


检查冲突:
svn status
如果有解决冲突,没有就svn commit命令就可以完成提交
====2011.04.10
1. 批量增加svn文件
Java代码
  1. svn add `svn st |grep ? |awk '{print $2}'`   
  2. svn st |grep ? |awk '{print $2}' |xargs svn add  
svn add `svn st |grep ? |awk '{print $2}'`
svn st |grep ? |awk '{print $2}' |xargs svn add


2. 批量增加svn:ignore属性
Java代码
  1. svn propset svn:ignore  -F ~/.svnignore -R /app/work/app1  

感觉复制过来效果不好样,贴个出处:http://yidianfengfan.iteye.com/blog/829713 觉得有用,看不太清楚的可以去这里看。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值