SVN版本控制使用注意實現

2021-08-04 01:18:54 字數 2376 閱讀 4032

1、使用自己的賬戶和密碼

各員工需牢記各自的賬戶和密碼,不可向他人透漏,禁止使用他人賬戶進行svn各項操作。

2、不要簽出(svn checkout)整個目錄。

工作中需要對專案或解決方案進行任何操作時,應使用svn請求最新**或檔案。不要簽出(svn checkout)整個目錄,除非特別必要,不應同時簽出過多的項。

3、先更新(svn update),再提交(svn commit)

svn更新的原則是要隨時更新(svn update),隨時提交(svn commit)。當完成了乙個小功能,能夠編譯並且通過自己測試之後,謹慎地提交。

如果在修改的期間別人也更改了svn的對應檔案,那麼commit就可能會失敗。如果別人和自己更改的是同乙個檔案,那麼update時會自動進行合併,如果修改的是同一行,那麼合併時會產生衝突,這種情況就需要同之前的開發人員聯絡,兩個人一起協商解決衝突,解決衝突之後,需要兩人一起測試保證解決衝突之後,程式不會影響其他功能。

在更新時注意所更新檔案的列表,如果提交過程中產生了更新,則也是需要重新編譯並且完成自己的一些必要測試,再進行提交。這樣既能了解別人修改了哪些檔案,同時也能避免svn合併錯誤導致**有錯。

4、多提交(svn commit),不要長時間簽出(svn checkout)專案或解決方案,減少因多人對同一檔案進行操作而產生的檔案衝突。

每次提交的間歇盡可能地短,以幾個小時的開發工作為宜。例如在更改ui介面的時候,可以每完成乙個ui介面的修改或者設計,就提交一次。在開發功能模組的時候,可以每完成乙個小細節功能的測試,就提交一次,在修改bug的時候,每修改掉乙個bug並且確認修改了這個bug,也就提交一次。我們提倡多提交,也就能多為**新增上保險。

5、不要提交不能通過編譯的**

**在提交之前,首先要確認自己能夠在本地編譯。如果在**中使用了第三方類庫,要考慮到專案組成員中有些成員可能沒有安裝相應的第三方類庫。專案經理在準備專案工作區域的時候,需要考慮到這樣的情況,確保開發小組成員在簽出(svn checkout)**之後能夠在統一的環境中進行編譯。

6、每次提交必須書寫明晰的標註

在乙個專案組中使用svn,如果提交空的標註或者不確切的標註將會讓專案組中其他的成員感到很無奈,專案經理無法很清晰的掌握工作進度,無法清晰的把握此次提交的概要資訊。在發現錯誤後也無法準確的定位引起錯誤的檔案。所以,在提交工作時,要填寫明晰的標註,能夠概要的描述所提交檔案的資訊,讓專案組其他成員在看到標註後不用詳細看**就能了解你所做的修改。

7、提交時注意不要提交本地自動生成的檔案

例如eclipse中的.classpath檔案,windows生成的縮圖thumbs.db,專案編譯生成的臨時檔案.obj, .class等等。如果專案中沒有進行這方面的配置來強行禁止提交這樣的檔案,請自覺不要提交這樣的檔案。提交了這樣的檔案後,別人在更新後就可能與本地的環境衝突從而影響大家的工作。

8、不要提交自己不明白的**

**在提交入svn之後,你的**將被專案成員所分享。如果提交了你不明白的**,你看不懂,別人也看不懂,如果在以後出現了問題將會成為專案質量的隱患。因此在引入任何第三方**之前,確保你對這個**有乙個很清晰的了解。

9、慎用鎖定功能

在專案中要慎用鎖定的功能,在你鎖定了乙個檔案之後別人就無法繼續修改提交該檔案,雖然可以減少衝突的發生率,但是可能會影響專案組中其他人員的工作。平時只有在編輯那些無法合併的檔案(例如檔案,flash檔案等)時,才適當的採用鎖定操作。

10、標記版本

對已經成熟穩定的版本,可標記為「發布版」,由專案經理提交給管理員。管理員將該版本向技術支援部成員開放,用於新專案的實施和現有使用者的公升級維護。

11、管理員需對svn管理的所有專案定期備份。

版本管理工具可以管理任何型別的檔案,但是在軟體開發過程中哪些應該納入版本管理,哪些不應該納入版本管理,還是有些建議需要遵循。

1. 所有源**、makefile檔案、工程檔案需要入軟體庫。

2. 所有編譯過程中生成的中間檔案和目標檔案一般不需要加入到版本庫。

3. 構建指令碼、測試指令碼、說明檔案、安裝指令碼、設計文件等需要加入到版本庫。

4. 工程中的用到的圖示檔案、聲音檔案等在編譯、執行時需要的檔案要加入到版本庫中。

5. 第三方源**、庫等開發、執行環境需要加入到版本庫。

6. 版本庫要合理組織目錄,以滿足專案的需求。

7. 避免在版本庫中多處儲存同樣的東西,如果確實有此需求,可以在一處儲存,用乙個專案級的工作區初始化指令碼來實現

版本控制svn的使用

參考 svn幫助 svn help 1 svn import path url 將未納入版本控制的檔案或目錄樹提交到版本庫。遞迴地提交 path 的副本至 url。如果省略 path,則預設為 2 svn checkout url rev path 從版本庫簽出工作副本。如果指定 rev,那麼它確定...

IOS版本控制,使用svn

版本控制對於團隊合作顯得尤為重要,那麼如何在ios開發中進行版本控制呢?在今天的部落格中將會介紹如何在mac下配置svn伺服器,如何匯入我們的工程,如何在xcode中進行工程的checkout和commit.一 配置svn伺服器 2,在mac下有自帶的svn服務功能 windows下是沒有的 直接在...

SVN版本控制

1.svn安裝 sudo apt get install subversion 2.建立倉庫 對於多個 倉庫 首先在 var 下建立svn主目錄。svnadmin create var svn test1 svnadmin create var svn test2 3.修改配置檔案 倉庫目錄下 co...