码迷,mamicode.com
首页 > 其他好文 > 详细

SVN 代码管理部署及使用(二)

时间:2018-10-22 20:41:14      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:ever   new   执行   updating   测试   int   release   nod   beta   

二、分支创建于合并

1、创建一个代码文件夹main
>[root@node2 svndata]# cd release/
[root@node2 release]# mkdir ./main 
[root@node2 release]# svn add ./main/
A         main
[root@node2 release]# svn commit ./main/ -m "zhugan"
Adding         main
Committed revision 2.

2、创建分支 
>[root@node2 release]# svn copy svn://10.0.0.6:/release/main svn://10.0.0.6:/release/beta -m "fenzhichuangjian"
Committed revision 3.

>[root@node2 release]# svn update
Updating ‘.‘:
A    beta
Updated to revision 3.
[root@node2 release]# ll
total 0
drwxr-xr-x. 2 root root 6 Oct 22 17:19 beta
drwxr-xr-x. 2 root root 6 Oct 22 17:16 main
-rw-r--r--. 1 root root 0 Oct 22 17:10 test.php

3、查看分支状态
![Alt text](./1540200095129.png)

注间事项:

a),创建分支,只能在同一个仓库内进行,跨仓库是不行的。会提示svn: No repository found in ‘svn://10.0.0.6‘

b),创建分支时,注意加上注释,不然会报错
4、分支合并
分别用node2 和node3在beta分支中创建文件或文件夹 并分别提交到svn代码仓库
>[root@node3 beta]# touch node3_test.log
[root@node3 beta]# mkdir node3_test
[root@node3 beta]# svn add node3_test.log node3_test 
A         node3_test.log
A         node3_test
[root@node3 beta]# svn ci node3_test node3_test.log  -m "node3 test files"
Adding         node3_test
Adding         node3_test.log
Transmitting file data .
Committed revision 4.

>[root@node2 beta]# svn update
Updating ‘.‘:
A    node3_test
A    node3_test.log
Updated to revision 4.
[root@node2 beta]# svn add test_node2.txt node2_test/ 
A         test_node2.txt
A         node2_test
[root@node2 beta]# svn ci test_node2.txt node2_test/  -m "node2 test files"
Adding         node2_test
Adding         test_node2.txt
Transmitting file data .
Committed revision 5.

>[root@node2 beta]# ll
total 0
drwxr-xr-x. 2 root root 6 Oct 22 17:26 node2_test
drwxr-xr-x. 2 root root 6 Oct 22 17:28 node3_test
-rw-r--r--. 1 root root 0 Oct 22 17:28 node3_test.log
-rw-r--r--. 1 root root 0 Oct 22 17:25 test_node2.txt


>[root@node3 beta]# ll
total 0
drwxr-xr-x. 2 root root 6 Oct 22 17:28 node2_test
drwxr-xr-x. 2 root root 6 Oct 22 17:26 node3_test
-rw-r--r--. 1 root root 0 Oct 22 17:26 node3_test.log
-rw-r--r--. 1 root root 0 Oct 22 17:28 test_node2.txt

记得update  此时发现 beta文件夹内已经存在生成的测试文件。
5、合并分支到主干:
 1)查找分支版本
 方法一
![Alt text](./1540200755763.png)
最后一个r3就是创建分支时候的reversion

方法二  cd main
命令:svn -q --stop-on-copy 分支URL,这条命令会查询出自创建分支以后分支上的所有修改,最下面的那个版本号就是我们要找的版本号. 
示例:svn log -q --stop-on-copy svn://10.0.0.6/release/beta
![Alt text](./1540200905407.png)
2)合并到主干
命令:svn -r 分支版本号:HEAD 分支的URL 
解释:HEAD为当前主干上的最新版本 
示例: 
cd main
svn merge -r 5:HEAD svn://192.168.1.177/tags/beta_2009_12_24 
![Alt text](./1540201026840.png)
查看可知 主干最新版本为r2
执行 
>[root@node2 main]# svn merge  svn://10.0.0.6:/release/beta .
--- Merging r3 through r5 into ‘.‘:
A    test_node2.txt
A    node2_test
A    node3_test
A    node3_test.log
--- Recording mergeinfo for merge of r3 through r5 into ‘.‘:
 U   .
[root@node2 main]# ll
total 0
drwxr-xr-x. 2 root root 6 Oct 22 17:40 node2_test
drwxr-xr-x. 2 root root 6 Oct 22 17:40 node3_test
-rw-r--r--. 1 root root 0 Oct 22 17:40 node3_test.log
-rw-r--r--. 1 root root 0 Oct 22 17:40 test_node2.txt

分支合并完成    然后提交到代码库
>[root@node2 main]# svn ci -m "hebing"
Sending        .
Adding         node2_test
Adding         node3_test
Adding         node3_test.log
Adding         test_node2.txt
Committed revision 6.

在node3上面执行update 同步
>[root@node3 beta]# cd ../main/
You have new mail in /var/spool/mail/root
[root@node3 main]# svn update
Updating ‘.‘:
A    test_node2.txt
A    node2_test
A    node3_test
A    node3_test.log
 U   .
Updated to revision 6.
[root@node3 main]# ll
total 0
drwxr-xr-x. 2 root root 6 Oct 22 17:42 node2_test
drwxr-xr-x. 2 root root 6 Oct 22 17:42 node3_test
-rw-r--r--. 1 root root 0 Oct 22 17:42 node3_test.log
-rw-r--r--. 1 root root 0 Oct 22 17:42 test_node2.txt

分支合并完成

SVN 代码管理部署及使用(二)

标签:ever   new   执行   updating   测试   int   release   nod   beta   

原文地址:https://www.cnblogs.com/wlbl/p/9831504.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!