[原]SVN代码管理

1.SVN工程结构

branches
zhangsan
lisi
wangwu
tags
project-release
trunk
project-trunk
branches:下为trunk的分支,以开发者的名字全拼命名,各开发者可以checkout自己的分支并行开发互不影响
tags:从trunk迁出的稳定版本,用于发布
trunk:工程主干
 
2.开发者提交代码
  当分支中的某位开发者完成了一个功能的开发或者修复了一堆BUG后,需要将分支的代码提交到主干,以张三的分支作为例子,步骤如下:
a.张三需要在自己的电脑上同时拥有project-trunk代码和zhangsan的分支代码
b.update project-trunk和zhangsan,保持代码是最新的
c.将project-trunk合并到zhangsan,参考命令:
cd ./zhangsan     进到zhangsan的目录
svn merge —dry-run zhangsan_url project-trunk_url 测试merge,如果没问题执行下面命令
svn merge zhangsan_url project-trunk_url 合并project-trunk到zhangsan
svn ci -m “记录日志" 提交合并后的代码并记录日志

d.将zhangsan合并回project-trunk,参考命令:

cd ./project-trunk     进到project-trunk的目录
svn merge —dry-run project-trunk_url zhangsan_url 测试merge,如果没问题执行下面命令
svn merge project-trunk_url zhangsan_url 合并zhangsan到project-trunk
svn ci -m “记录日志" 提交合并后的代码并记录日志

这时zhangsan和project-trunk的代码就同步了,如果在测试merge的时候出现问题,可以通过下面的命令回退:

svn revert -R file_path

补充几个svn命令:

svn info    查看svn信息
svn st 查看svn更改状态
svn log 查看日志
svn up 更新代码
svn resolve --accept working -R .    解决冲突 “.”是冲突路径

注意:开发者提交代码到主干的时候一定是先从主干同步代码到自己的分支,再将自己的分支合并回主干。

上一篇:【转】操作系统Unix、Windows、Mac OS、Linux的故事


下一篇:Java操作属性文件,支持新增或更新多个属性