1. Checkout只需要做一次!
2. 每天下班前:commit“可运行版本”
3. 每天上班前:update前一天所有代码
要想利用SVN管理源代码,必须得有2套环境
服务器
1. 用于存储客户端上传的源代码
2. 可以在Windows上安装Visual SVN Server
3. 大部分情况下,公司的开发人员不必亲自搭建SVN服务器
客户端
1. 上传本地的源代码到服务器,或者更新服务器的代码到本地,保持同步
2. 可以在Mac上使用命令行、Versions、Cornerstone、Xcode
开发人员就属于客户端这个角色
1.Visual SVN Server下载地址:
http://www.visualsvn.com/server/download/
2.Visual SVN Server安装:
3.创建代码仓库
4.添加用户
5.设置权限
6.网页访问服务器
svn merge :将两个版本之间的差异合并到当前文件
svn info :查看文件的详细信息
将项目检出(下载) 至本地
注意:这里的中括号[ ]代表可选(可以省略)
示例
svn checkout https://192.168.1.106/svn/Weibo/
/Users/Documents/workspace
如果省略橙色的路径,就下载到命令行当前所在的路径
将改动过的文件提交至服务器
注意:一定要养成写注释的良好习惯
示例
svn commit -m “修改了User.m文件”
/Users/Desktop/workspace/Weibo/branches/User.m
橙色代表的是:提交哪个文件到服务器
如果省略橙色的路径,就将命令行所在路径中所有改动过的文件提交到服务器
提交一个新建的文件到服务器,需要2个步骤
如果直接提交一个没有添加到本地版本控制库中的文件,会报下面的错误
is not a working copy
向本地的版本控制库中添加一个新文件
svn add PATH
示例
svn add /Users/Desktop/workspace/Weibo/branches/User.m
橙色代表的是:添加哪个文件到版本控制库中
删除服务器上的某个文件,需要做2个步骤
将文件从本地的版本控制库中移除
svn delete PATH
示例
svn delete /Users/Desktop/workspace/Weibo/branches/User.m
橙色代表的是:将哪个文件从版本控制库中移除
将服务器的最新代码更新到本地
svn update [PATH]
示例
svn update /Users/lnj/Desktop/workspace/Weibo/branches/User.m
橙色代表的是:更新哪个文件的内容
如果省略橙色的路径,就更新命令行所在路径的所有内容
将文件恢复至某个版本
svn update -r 版本号 [PATH]
1.去到公司的第一天,下载公司的代码到电脑上
svn checkout
2.修改了某个早已存在的旧文件,然后提交到服务器
svn commit
3.提交一个自己新建的文件到服务器
svn add -> svn commit
4.删除一个早已存在的旧文件,然后同步到服务器上
svn delete -> svn commit
5.将其他同事提交的新代码更新到自己电脑上
svn update
6.不小心写错了很多东西,想撤销所写的东西(还未把修改提交到服务器)
svn revert
7.不小心删错了文件,想把文件恢复回来(还未把删除提交到服务器)
svn revert
8.不小心写错了很多东西,想撤销所写的东西(已经把修改提交到服务器)
svn update -r 版本号
9.不小心删错了文件,想把文件恢复回来(已经把删除提交到服务器)
svn update -r 版本号
注意
.svn这个隐藏目录记录着非常关键的信息
千万不要手工修改或删除这个 .svn隐藏目录和里面的文件! 否则将会导致本地的工作副本被破坏,无法再进行操作
在Mac上,也可以利用SVN图形界面工具来管理源代码,可以大大减小使用命令行的痛苦(有些操作使用命令行会比较繁琐,比如解决冲突)
Cornerstone / Versions / Xcode
大部分工作在Xcode中都可以完成
Xcode对SVN的支持并不是非常友好,尤其新建文件夹时,在Xcode中非常容易出问题
使用Xcode工作:先更新,再提交!
Xcode中,最好不要多人同时修改一个Storyboard!
Cornerstone添加管理仓库
Xcode5-SVN配置
1. 添加SVN地址
2. Xcode 6 is in Xcode > Preferences > Accounts > Repositories (menu on the left) > (+) Add Repository
Xcode5-SVN配置-添加SVN地址
Xcode5-SVN配置-设置SVN账号
Xcode5-下载服务器代码
正规项目的SVN目录结构一般有3个文件夹
trunk:主干,当前开发项目的主目录
branches:分支目录,添加非主线功能时使用,开发测试之后,可以合并到主干项目中
tags:标记目录,通常作为重大版本的备份
SVN目录使用-案例
使用SVN我们应该
提示