1载荔、安裝VisualSVN軟件
用于搭建服務器,添加倉庫和配置用戶信息權限等操作(項目經(jīng)理需要做的采桃,員工一般不用)
2懒熙、終端指令
常用命令行及簡寫:
- 下載項目:svn checkout -> svn co
- 提交代碼:svn commit -> svn ci **常用**
- 更新代碼:svn update -> svn up **常用**
- 刪除文件:svn remove -> svn rm
- 查看版本信息:svn log
- 查看文件狀態(tài):svn status -> svn st
常見文件狀態(tài)
- ? : 不在svn的管理之下
- A : 該文件在已經(jīng)添加到svn的管理之下,但是只是保存在本地,并沒有提交到服務器
- M : 該文件在本地已經(jīng)被修改,但是沒有傳到服務器
- D : 該文件在本地已經(jīng)刪除,但是服務器依然有該文件,刪除操作沒有更新到服務器
- C:產(chǎn)生沖突
- I :該文件已經(jīng)被忽略
- ! : 文件丟失或不完整(無法識別該文件)
- G :產(chǎn)生沖突后,更新操作去解決沖突相當于合并
- 項目經(jīng)理操作
從服務器下載配置內(nèi)容:
svn checkout服務器項目地址
--username=用戶名
--password=密碼
初始化項目
創(chuàng)建項目 : touch項目名
添加到svn的管理 : add項目名
將項目上傳服務器 : svn commit -m “提交內(nèi)容的注釋 ”員工A加入開發(fā)
將服務器內(nèi)容下載到本地
svn checkout服務器地址
--username=用戶名
--password=密碼
開始開發(fā)
創(chuàng)建文件 : touch 文件名
提交到服務器 : svn commit -m “提交內(nèi)容的注釋”項目經(jīng)理更新代碼
svn update(如果該文件已經(jīng)在本地則更新普办,不在本地則下載)
新員工B加入開發(fā)
1工扎、向項目經(jīng)理要一些東西
- SVN服務器地址、賬號及密碼
- 需求文檔 : 項目有什么需求,要實現(xiàn)什么功能
- 接口文檔 : 詳細的記錄服務器所有接口
- 效果圖: 界面最終要實現(xiàn)什么樣的效果
2衔蹲、開始開發(fā)
- 將服務器已有的內(nèi)容下載到本地:
svn checkout服務器地址
--username=用戶名
--password=密碼
- 創(chuàng)建文件:
touch文件名
- 將創(chuàng)建文件添加到SVN管理
(*代表將文件夾內(nèi)所有文件添加到SVN管理)
:
svn add * - 提交到服務器
svn commit -m “提交內(nèi)容的注釋(說明)
”
- 版本回退
1肢娘、 svn update -r版本號
先回退到某個版本,確認下該版本是否是自己打算回退的版本
2、 svn update :
將本地文件更新到最新版本
3舆驶、 svn merge -r最新版本號
:要回退版本號
person.h
將兩個版本進行合并
4橱健、svn commit -m “回退到某版本
”
重新提交服務器
- 刪除文件
svn remove
文件名
svn commit -m “
刪除了某個文件
”查看版本信息
svn update
先從服務器更新一下最新內(nèi)容
svn log
再查看提交的各版本信息
- 代碼沖突
- out of date : 過期,本地版本號低于服務器的版本
- df : 在命令 中展 所有的不同
- e : 在命令 中來編輯沖突
- mc: 使用我的本地的代碼來覆蓋服務器的代碼
- tc : 使用服務器的代碼來覆蓋我的代碼
- p : 延遲解決沖突,展示所有沖突的文件, 手動解決沖突: svn resolved person.h
注意: 1 > 盡量在修改文件之前,先update 2 >如果修改公共文件,最好先跟同事打招呼,讓他先別修改,修改完之后,讓他更新
3、圖形化界面: CornerStone
項目經(jīng)理操作:
-
界面概覽
-
添加遠程服務器倉庫
-
將服務器倉庫代碼checkout到本地
-
選擇保存到本地的路徑
-
通過xcode創(chuàng)建項目保存到剛才checkout的本地路徑
-
將文件添加到SVN管理(手動點擊沙廉?號)
-
Commit初始化
-
配置忽略文件
需要忽略的文件
xcode會默認記錄之前停留文件,下次打開依然停留在該文件,這個不需要共享
xcode會默認記錄之前目錄的打開情況,同事不需要拘荡,沒必要共享
在代碼中打的斷點信息,不需要進行共享
-
在xcode可以進行上面3點操作,讓它生成新的xcuserdata數(shù)據(jù)撬陵,然后再忽略一下即可
-
忽略掉文件之后先update一下然后再commit即可
員工A加入開發(fā)
-
先添加服務器倉庫
-
將倉庫代碼checkout到本地
然后就可以打開項目開始開發(fā)了珊皿,后面的Commit和update操作直接在Xcode里面即可
(Xcode工具欄—> Source Controller—>CheckOut/update)
沖突解決
-
當在xcode內(nèi)Commit代碼的時候,提示如下信息:
-
先update一下本地代碼巨税,解決沖突
再Commit到服務器
4蟋定、使用Xcode CheckOut代碼
-
在偏好設置添加遠程代碼倉庫
-
然后再使用xcode工具條的Resource Control進行checkout代碼操作
后面就是正常的Commit和update操作了...
5、Xcode中使用svn的注意點:
1垢夹、如果使用到靜態(tài)庫必須使用命令行將靜態(tài)庫添加到svn的管理之下
2溢吻、如果在項目中能使用xib,盡量使用xib;如果必須使用storyboard果元,盡量保證只有一個人在操作storyboard