SVN使用规范
1.提交必须写注释
清晰的提交注释有助于别人理解你所做的修改,出现问题时能够快速定位,也有助于项目经理把握开发进度。所以,在提交代码时,要填写明晰的标注,能够概要的描述所提交文件的信息,让项目组其他成员在看到标注后不用详细看代码就能了解你所做的修改。
2.禁止提交未编译通过的代码
代码在提交之前,首先要确认自己能够在本地编译,保证主干永远是畅通的。如果引用了新的类库,确保相应的pom.xml文件也已提交。
3.不要提交自己不明白的代码
代码在提交入SVN之后,你的代码将被项目成员所分享。如果提交了你不明白的代码,你看不懂,别人也看不懂,如果在以后出现了问题将会成为项目质量的隐患。因此在引入任何第三方代码之前,确保你对这个代码有一个很清晰的了解。
4.不要提交本地自动生成文件
eclipse会自动生成一些工程文件如.classpath,.settings等文件,以及项目编译生成的临时文件target, .class等等。提交了这样的文件后,别人在更新后就可能与本地的环境冲突从而影响大家的工作。通常在新建项目或模块时会设置相关的ignore属性,具体设置方法详见设置ignore,external属性
5.按功能模块整体提交,提交不要过于频繁
完成一个功能模块后,将该模块相关修改作为整体提交。不宜分离过于频繁提交,使功能上不同步,并无限增大svn版本号
6.提交后svn st检查是否有遗漏
提交后svn st检查下是否有冲突,有遗漏的代码
7.尽量使用命令提交
eclipse中的svn插件很便捷,但有时会存在漏提交,或多提交的问题,如总控的pom.xml在eclipse中看不到,易造成漏提交,尽量使用svn命令来提交。
8.慎用锁定功能
在项目中要慎用锁定的功能,在你锁定了一个文件之后别人就无法继续修改提交该文件,虽然可以减少冲突的发生率,但是可能会影响项目组中其他人员的工作。平时只有在编辑那些无法合并的文件(例如图片文件,flash文件等)时,才适当的采用锁定操作。
SVN使用技巧
常用命令
1.svn co [svn地址] [本地目录]:签出工作拷贝
2.svn st:查看工作拷贝状态
svn st
X bundle/rpm/framework
M quickconfig.sh
X deploy/jboss_server
每行首字母的含义:
"!"表示:本地执行了"rm -rf",但是未执行"svn del"的状态。
"?"表示:本地新加了一个文件,但是未执行"svn add"的状态。
"A"表示:本地新加了一个文件,且执行了"svn add"的状态。
"X"表示:执行了"svn external"的状态。
"D"表示:本地执行了"rm -rf",且执行了"svn del"的状态。
"M"表示:本地修改了该文件时的状态。
"C"表示:冲突状态,是重点关注状态之一。
3.svn diff:比较两个版本拷贝的区别
比较本地文件与与拷贝版本的区别
svn diff web/com/alibaba/china/app/levit/expo/web/action/DeclareAction.java
结果中行首字母"-"表示本地版本,"+"表示工作拷贝版本
4.svn info:查看工作拷贝信息
通常用来查看当前拷贝的svn地址
5.svn revert:取消本地所做修改
$svn revert quickconfig.sh
Reverted 'quickconfig.sh'
6.svn log:查看提交日志信息
7.svn add:添加一个文件
8.svn cleanup:递归清理工作拷贝
9.svn ci: 提交工作拷贝
svn ci quickconfig.sh -m "标注"
10.svn update:更新本地拷贝
遇到工作拷贝已锁定的错误时,可以用该命令清除
11.最重要的------svn help:查看帮助
更多常用命令参见肖芳城【技术】svn命令小集
设置ignore,external属性
windows下使用乌龟设置的方法参见肖芳城【技术】svn命令小集#四、乌龟的使用
1.linux下命令方式
例:设置expo目录的ignore属性,忽略target, class, .classpath, .settings, .project
步骤:
1.svn propedit svn:ignore expo
2.这是出现一个vi编辑框,在里面加入要忽略的目录文件:
target
class
.classpath
.settings
.project
3.保存退出,会显示xxx的ignore属性被设置。可以用svn st查看那下效果。
2.eclipse插件方式
安装过subeclipse插件的可以通过插件设置属性
1.再需要设置的目录上右键->Team->Set Property

2.在弹出的对话框中设置属性

3.如果已经设置过相关属性,要做修改,可以在Team->Show Property中进行编辑

分支合并
1.创建新分支(现在该步骤在aone上完成)
svn cp 主干地址 新分支地址 -m "标注"
2.签出新分支
3.检查旧版本版本号,在旧版本目录下执行
找到创建该旧分支时的版本号xxxx,通常是最小的那个
4.进入到新分支目录下执行合并操作
svn merge -r xxxx:HEAD 旧分支地址
5.使用svn st查看合并后的状态,查看是否存在冲突
6.冲突解决后,别忘了svn ci提交合并后的代码
参见分支的创建与合并

- 大小: 33.5 KB

- 大小: 21.3 KB

- 大小: 14.2 KB
分享到:
相关推荐
课件的使用是教学资源的重要组成部分,有助于增强课堂互动性和吸引力。 2. 差异化教学:面对班级人数增加和学生学习能力差异的问题,教师采取了耐心辅导差生的方法,通过额外的练习和关注,帮助他们提升学习水平,...
申请人姜博代表全体发起人,恳请系团委领导、学生处能够给予摄影协会成立的支持与批准。在学院、系里的关心和社团联合会的帮助下,摄影协会有信心成长为一个优秀的校园社团,为活跃校园文化艺术氛围,丰富同学们的...
scratch少儿编程逻辑思维游戏源码-皮博冒险者.zip
少儿编程scratch项目源代码文件案例素材-这是之前下载的测试.zip
scratch少儿编程逻辑思维游戏源码-汽车冲突.zip
scratch少儿编程逻辑思维游戏源码-梦幻岛 3D.zip
scratch少儿编程逻辑思维游戏源码-收集水果.zip
炫酷蓝色响应式投稿说明源码.zip
机器学习算法与应用大作业-基于预处理的小麦品种的分类和聚类源码+数据+使用说明.zip是个人经导师指导并认可通过的高分设计项目,评审分98分。主要针对计算机相关专业的正在做大作业的学生和需要项目实战练习的学习者,可作为课程设计、期末大作业。。内容来源于网络分享,如有侵权请联系我删除。
vs2019_Qt5.12.12编译好的ffmpeg库,因为是c接口,别的版本理论也可以用
scratch少儿编程逻辑思维游戏源码-欧力多.zip
少儿编程scratch项目源代码文件案例素材-越野运动员.zip
GUI开发_CMake_MSVC_CLion_ElaWidgetTools_跨平台界面组件库_简化项目结构_降低上手难度_提供完整编译环境配置_支持Windows11开发_快速集成
scratch少儿编程逻辑思维游戏源码-时间先生.zip
少儿编程scratch项目源代码文件案例素材-爪猫使命召唤.zip
内容管理系统_SpringBootThymeleaf双引擎解析_梦想家CMS开源建站系统_面向政府企业组织快速搭建展示型网站如企业官网技术博客信息门户等解决建站成本高周期长问题
健康监测与运动数据自动化_云函数部署与定时任务管理_乐心健康APP账号绑定与步数同步_通过腾讯云函数和青龙面板实现自动刷步并同步至蚂蚁森林获取每日296g能量的智能脚本系统_适用于
动态雨滴玻璃掉落个人主页源码.rar
scratch少儿编程逻辑思维游戏源码-鸟群算法.zip
scratch少儿编程逻辑思维游戏源码-墨迹.zip