2.SVN checkout到達本地後刪除本地文件對服務器有影響嗎?
不會影響服務器,當妳執行“svn更新”時,zai會自動重新下載;刪除後執行“svn commit”也會將其從服務器上刪除。
3.連接到服務器
單擊文件-存儲庫-單擊座位側面的“+”,然後單擊名稱、svn服務器的地址和類型,選擇subversion,然後單擊next,依此類推。
4、Xcode4,SVN常用命令
提交提交
Checkout將服務器下載到本地計算機(我正在使用它)。
更新更新文件
文件-& gt;source controller->;更新
圖中第三個按鈕是視圖對比度按鈕。
5.詳細說明在SVN的用法和註意事項
(1)提交自己的代碼。
SVN更新的原則是及時更新和提交。壹個小功能完成後,可以自己編譯測試,盡早提交,這樣也保存了版本歷史,必要時可以回滾;在開始壹天的工作之前,最後更新壹下項目。
(2)保持原子提交(不要無意中修改提交別人的文檔)
只提交自己修改的部分,最好不要壹次性提交整個項目;
當壹個函數或文件完成後,最好提交它。我在完成壹個函數後遇到了代碼中的bug,但是我沒有提交,然後我做了修改。結果,我無法返回正常代碼。
③不要提交自動生成的文件。
VisualStudio和其他開發工具會在生成過程中產生許多自動文件,比如像。suo,debug、release、obj等編譯文件,以及其他自動生成的與編譯代碼無關的文件。這些文件提交的時候不應該簽入,如果不小心簽入了需要從倉庫裏刪除。
④不要提交無法編譯的代碼。
在提交代碼之前,您必須首先確保可以在本地編譯它。當代碼在提交前通過了自己的測試時,最好提交SVN的更新。
SVN常用命令的詳細說明
1.將文件簽出到本地目錄。
Svn簽出路徑(路徑是服務器上的目錄)
比如:SVN結賬SVN://192.168.1.1/pro/domain。
2.向版本庫中添加新文件。
svn添加文件
例如:svnadttest.php(加上test.php)
3.刪除文件
svn刪除路徑-m“刪除測試文件”
比如:SVN刪除SVN://192.168.1.1/pro/domain/test . PHP-m“刪除測試文件”。
4.檢查日誌
svn日誌路徑
5.比較差異
Svn差異路徑(將修改後的文件與基本版本進行比較)
6.將兩個版本之間的差異合並到當前文件中。
svn合並-r m:n路徑
SVN用法
更新,經常更新沒有壞處,尤其是多人項目。如果在每次提交之前沒有更新最新版本,svn將提示當前副本已經過期,需要更新。
Commit,壹定要把這次提交的內容寫個總結,以備將來參考。
將文件簽出到本地目錄。
Svn簽出路徑(路徑是服務器上的目錄)
svn update命令會自動用服務器上的版本替換本地版本控制的文件。
6.在Xcode中使用SVN並提交來解決沖突。
Xcode的SVN功能比Eclipse的subclipse或者windows的tortoiseSVN差太多了。
我根本不需要,用命令行就行。我覺得有朋友用subclipse,其實挺好的。然而,為了使用SVN函數,需要單獨打開壹個消耗資源的Eclipse。
但是無論妳用什麽SVN工具,都會遇到Xcode固有的問題,就是文件的提交沖突。
project.pbxproj文件包含構造過程所需的所有文件。如果在項目目錄中添加新文件,比如不傳遞Xcode,那麽該文件就不會在project.pbxproj文件中,也不會生成到app中。同樣,如果您更新了來自SVN的其他項目成員添加的文件,而沒有更新project.pbxproj文件(或者該成員根本沒有提交此文件),也會出現同樣的現象。
如果壹個項目成員提交了壹個新的project.pbxproj文件,妳不需要在這裏給項目添加新的文件,直接svn更新就可以了。
7.在Xcode中更新代碼後,項目文件無法打開。
如果選擇更新整個項目,尤其是project.pbxproj文件,通常會發生沖突。該文件包含構建過程所需的所有文件。如果壹個新文件被添加到項目目錄中但是沒有通過Xcode,
該文件不在project.pbxproj文件中,因此不會生成到應用程序中。同樣,如果您從SVN更新到由其他項目成員添加的文件,
如果不更新project.pbxproj文件(或者成員根本沒有提交這個文件),也會出現同樣的現象。這種文件沖突將直接導致無法打開項目文件。
更新代碼後無法打開項目文件解決方法:
當tobacco.xcodeproj等項目文件無法打開時,可以右鍵選擇'顯示包內容',會看到三個文件,project.pbxproj/user.modelv3/user.pbxuser.
其中project.pbxproj有三個版本,可以像普通svn文件沖突壹樣解決沖突。
8.SVN更新提交和合並之間的差異
當本地文件不變而服務器文件改變時,更新將從服務器獲取文件並覆蓋當前文件。
當本地文件更改而服務器文件未更改時,此文件將不會更新。
當本地文件發生變化而服務器文件發生變化時,如果變化的部分不沖突,文件將合並到本地。如果有沖突,會提示文件有沖突,需要手動修改上傳到服務器。
最後壹個解釋了合並:
服務器和本地的同壹個文件(所謂同壹個文件應該是SVN相對路徑相同,文件名相同的文件,這是由SVN在本地留下的信息決定的)被修改過,修改的部分不重疊也不重合。
當滿足上述條件時,SVN將自動合並。
SVN的秘密是,別人提交了修改後的文件,如果妳再提交妳的,他不會允許妳提交。。。
& gt& gt& gt& gt
& lt& lt& lt
它標有沖突區域。為什麽刪除沖突區域後無法提交?
溶液1:
如果刪除,沖突將無法解決。會有幾個文件名相同但文件後面後綴不同的文件。
如果妳不知道如何使用SVN來解決沖突,最簡單的方法是這樣的。
更改這個文件的名稱,然後在文件所在的目錄下更新,這樣服務器文件就會被下載,然後修改的部分就會添加到更新的文件中,這樣就可以提交了。
解決方案2:
右擊文件,進入SVN菜單。應該有壹個編輯沖突的按鈕。如果您選擇它,將出現壹個窗口,壹邊是服務器版本,另壹邊是您自己修改的版本。
9.使用xcode自己的svn
1.代碼中的壹個文件標有“m”,表示該文件已經被修改,需要提交。
(右鍵單擊文件-& gt;源代碼管理->;提交選定的文件...)
2.代碼中的文件後有壹個“A”標記,表示該文件是新添加的,由SVN管理,需要提交。
(右鍵單擊文件-& gt;源代碼管理->;提交選定的文件...)
3.代碼中的壹個文件後跟“?”標記,表示該文件是新添加的,不在SVN管理範圍內。首先,您需要添加,然後提交。
(右鍵單擊文件-& gt;源代碼管理->;添加,使文件的標記變為“a”,然後提交)。