SVN
一.命令⾏行的演⽰示
1.将服务器的已有的内容下载到本地
svn checkout 服务器地址 —username=xxx —password=xxx
2.初始化项目
touch main.m
:创建main.m
svn add main.m
: 将main.m添加到svn的管理之下
svn commit -m “初始化项目” main.m
: 将main.m上传到服务器
3.查看⽂文件状态(查看⽂文件是否在svn的管理之下,或者是否进⾏行了修改⽽而没有提交)
svn status
? : 不在svn的管理之下
A : 该⽂文件在已经添加到svn的管理之下,但是该⽂文件在本地,并没有提交到服务器
M : 该⽂文件在本地已经被修改,但是没有传到服务器
D : 该⽂文件在本地已经删除,但是服务器依然有该⽂文件,删除操作没有更新到服务器
4.张三加⼊入开发
- 1> 将服务器所有的内容下载到本地
svn checkout 服务器地址 —username=zs —password=zs
- 2> 开始开发
touch person.h person.m :创建person类
svn commit -m “创建了person类”
- 3> 更新代码
svn update
:更新服务器最新的代码(如果该⽂文件在本地不存在,则下载,如果本 地存在,则更新)
5.命令⾏行的简写
svn checkout -> svn co
svn status -> svn st
svn commit -> svn ci
svn update -> svn up
6.版本回退
svn revert person.h
: 删除本地新增的内容(没有提交到服务器)
svn update -r6
: 先回退到某个版本,观察下,该版本是否是你想要的那个版本
svn update
: 更新到最新的版本
svn merge -r7:6 person.h
注意:如果本地版本号低于服务器的版本号,那么不能提交
7.删除⽂文件
svn remove(rm) person.m
8.查看版本信息
svn update
: 更新服务器最新的内容
svn log
:查看版本信息
9. 代码冲突
out of date : 过期,本地版本号低于服务器的版本
df : 在命令⾏行中展⽰示所有的不同
e : 在命令⾏行中来编辑冲突
mc: ⽤用我的本地的代码来覆盖服务器的代码
tc : ⽤用服务器的代码来覆盖我的代码
p : 延迟解决冲突,展⽰示所有冲突的⽂文件,⼿手动解决冲突 -> svn resolved person.h
注意:
1 > 尽量在修改⽂文件之前,先update
2 >如果修改公共⽂文件,最好跟同事说⼀一声,让他先别修改,修改完之后,让他更新
二.图形化界⾯面⼯工具(Cornerstone)
1.初始化项目
1> 将服务器已有的内容下载到本地 记住format的选择 —>最新版本
2> 需要忽略的⽂文件
xcode会默认记录之前停留⽂文件,下次打开依然停留在该⽂文件,这个不需要共享 xcode会默认记录之前⺫⽬目录的打开情况,同事不需要共享
断点信息,不需要进⾏行共享 xcuserdata
2.在xcode中使⽤用svn的注意点
1> 如果使⽤用到静态库需要特别注意,必须使⽤用命令⾏行将静态库添加到svn的管理之 下
2> 如果使⽤用到了storyboard也需要特别注意
如果能使⽤用xib,尽量使⽤用xib 如果在项⺫⽬目当中使⽤用到了storyboard,尽量保证只有⼀一个⼈人在操作storyboard
3> checkout的⽅方式 使⽤用命令⾏行
使⽤用cornerstone(图形化界⾯面⼯工具) Xcode
4> 公司开发技巧(避免冲突) 尽量写⼀一些代码就提交到服务器,时时跟服务器的代码保持同步
网友评论