CornerStone使用分享
CornerStone
是mac下非常流行的一个SVN管理工具,mac版本svn管理中最推荐使用的一个。
建议使用3.0.3
版本
一、添加资源库

二、检出工程

三、认识WokingCopy

红色标识的部分是快速筛选栏
CHANGED
所有变化的内容都会出现在这里. 包括修改
和未纳入
版本管理的文件
MODIFIED
所有修改过的内容会出现在这里. 只有纳入版本管理的文件会包含在这里
CONFLICTED
所有冲突文件在这里,冲突文件会出现
WorkingCopy中文件的几种标识:
标识 | 说明 |
---|---|
![]() |
未纳入版本管理的标识 |
![]() |
已删除的标识 |
![]() |
被修改的标识 |
![]() |
被锁住的标识 |
![]() |
冲突的标识 |
四、常见问题
1. 如何忽略某些不需要被SVN管理的文件夹

2. 忽略某些特定文件

CornerStone->Preferences
3. 如何打分支

选择资源库,找到指定的工程,右键可以选择打分支、Tag
4. 如何merge代码
CornerStone merge代码不是很好用,有条件建议在windows下使用TortoiseSVN。


Synchronize Branch
同步主干开发的内容到分支
Reintegrate Branch
同步分支的修改到主干
Cherry Pick Changes
选择指定版本号合并
Advanced Merge
自定义合并
建议使用Cherry Pick Changes
,可以比较清楚的知道自己要合并的内容,这里也重点介绍这种合并方式

选择要合并的svn分支或者主干,要合并的版本号。然后执行merge操作
5. 如何解决冲突
CornerStone解决冲突能力几乎为0,发生冲突之后,请使用文本工具打开冲突文件手动解决冲突。
然后再CornerStone将指定文件标记为解决
6. 如何Cleanup操作

五、SVN最佳实践一些建议
- 经常提交,提交以功能为单位,注释写清楚
- 更新后再提交,避免冲突和锁住文件
- 提交SVN时与SVN基准版本对比,确认提交内容无误。特别注意测试代码被提交,或者非本次修改内容
- 测试代码打上标签,提交时检查是否包含标签内容的代码
- 解决冲突要仔细,不能简单粗暴的保留自己或者他人代码
- 合并代码使用选择特定版本号合并
- 不需要受SVN管理的目录或者文件添加SVN忽略
- 版本发布之后立即打Tag
- 修复bug在分支修复
- bug修复上线后立即merge回归主干
网友评论