版权声明:本文为延成原创文章,转载请标明出处
一.命令行的演示
- 1.项目经理将服务器的已有的内容下载到本地
svn checkout 服务器地址 —username=mgr —password=mgr - 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 : 该文件在本地已经删除,但是服务器依然有该⽂文件,删除操作没有更新到服务器 - 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.公司常用的命令
svn update : 更新
svn commit -m “注释” :将本地的代码提交到服务器
二. 代码冲突
out of date : 过期,本地版本号低于服务器的版本
df : 在命令⾏行中展⽰示所有的不同
e : 在命令⾏行中来编辑冲突
mc: ⽤用我的本地的代码来覆盖服务器的代码
tc : ⽤用服务器的代码来覆盖我的代码
p : 延迟解决冲突,展⽰示所有冲突的⽂文件,⼿手动解决冲突 -> svn resolved
person.h
三.注意事项
-
1.需要忽略的文件
xcuserdata -
2.在xcode中使用svn的注意点
1> 如果使用到静态库需要特别注意,必须使用命令行将静态库添加到svn的管理之
下
2> 如果使用到了storyboard也需要特别注意
如果能使⽤用xib,尽量使用xib
如果在项目当中使用到了storyboard,尽量保证只有一个人在操作storyboard -
2.目录文件说明
1> Trunk
目前项目正在开发的版本
通常进入公司之后在该目录下开发
2> Tags
存放已经上线的重大版本
3> Branches
当发生重大bug或者有新需求时
四.文件状态
svn st 显示的文件状态
状态说明:描述文件被添加、删除或其他修改
’ ’ 没有修改
‘A’ 被添加到本地代码仓库
‘C’ 冲突
‘D’ 被删除
‘I’ 被忽略
‘M’ 被修改
‘R’ 被替换
‘X’ 外部定义创建的版本目录
‘?’ 文件没有被添加到本地版本库内,不在SVN的管理之下
‘!’ 文件丢失或者不完整(不识别该文件)
‘~’ 受控文件被其他文件阻隔
‘U’ 更新最新的代码到本地(本地有文件的情况下)
‘G’ 产生冲突后,更新操作去解决冲突,相当于进行合并