VisualSVN 說明文檔


 

窗體頂端

VisualSVN Server+TortoiSVN基本使用

說明文檔

1.安裝VisualSVN Server服務器端:

1).下載VisualSVN Server
2).安裝

 

 

 

 

2.安裝TortoiSVN

1).下載TortoiSVN
2).安裝

 

 

 

 

3.配置項目工程並設置用戶權限

1).安裝完成后打開程序出現該界面

2).新建項目工程

 

 

 

3).新建用戶

 

 

 

4).新建用戶組

 

 

 

5).設置用戶權限

 

 

 

這時候設置Developer1為Read/Only,tester1權限為Read/Write或者反過來都可以.

針對於單個文件或文件夾的權限設置:只需要在對應的用戶權限下設置Read/Only或者
Read/Write,這個時候沒有權限的用戶就提交不了,為了避免出現提交問題,最好在提交或者獲取版本的時候不要保存密碼,如果保存了在新的一次提交的時候要清除保存的密碼.步驟如下:

 

 

4.導入項目

 

 

 

 



導入成功后:

 

4.遷出項目

1).把項目遷出到D盤新建一個文件夾叫testNameDir1里面

 

遷出來后的項目:

項目遷出成功后,接下來就是對項目副本進行操作:

1).Merge--版本合並
建立一個文件夾testNameDir2如上操作,同樣的操作遷出項目副本
1.1 最常用的merge方式就是以下兩種:
   (1).Merge a range of revisions   
我的理解是可以合並一系列的不同版本,將不同版本上與本版本的不同之處進行合並。
   (2).Reintegrate a branch   
就是將分支版本上的修改返回到創建該分支版本的源版本,即主干版本或者其他。要使用這個方法要求這個分支版本不能再有任何本地修改,必須是一個單獨的版本,不能有任何分支子版本。而且這個版本號必須高於或者等於要融合的最后的版本號。
1.2 常見問題解析:
1.2.1 代碼過時。通常會表現為當我們修改了某個文件的某段代碼后准備提交時,當點擊“commit”時提示part of your code is out of date。這說明我們在對這個文件進行修改時,同時有另外的成員在對這個頁面進行修改,這時我們需要首先獲取一
下最新版本,如果別的成員做過的修改恰好是我們改動的部分,就會有形如“>>>>mine”和“<<<>>>mine”下面的表示我們的代碼,而“<<<<xxxx”下面的表示其他成員更改的代碼。這時我
們需要分析決定怎樣處理這個錯誤,處理后要將“>>>>mine”和“<<<
1.2.2 修改沖突。有時候我們修改完畢以后將我們的工作提交后才獲取最新版本(一般不提倡,最好的做法是提交前先獲取最新版本,如果有問題處理問題),獲取后開始 “重新生成解決方案”出現了我們的web項目BlackJack.Web.csproj無法加載。
這是由於我們做了自己的修改提交前並沒有及時獲取最新版本,導致代碼中有重復修改的地方。這時我們需要右擊BlackJack.Web.csproj有個選項是“編輯BlackJack.Web.csproj”,然后在打開的文件中搜索“mine”(目的是找到沖突地方),
找出后進行分析取舍,完成后再次“重新生成解決方案”后加載web項目,這時就會出現,但因為代碼中的沖突依然存在因此會有“!”提示我們,找到相關的沖突的文件處理后會發現文件前的圖標變成了紅色小方框,代表沖突解決我們就可以編譯后提交了。
1.1).當兩個人A和B操作同一個文件a,A先修改了a文件並提交,B不知道A修改了a,此時版本號已經遞增了1,B提交文件才發現提示"part of your code is out of date",這個時候我們就應該獲取新版本,並且手動
編輯沖突,編輯完成后,編輯的文件右鍵點擊Resolved,代表已經解決了沖突,最后提交commit
1.2).二進制文件和不適合編輯的文件適合用鎖定--編輯--解鎖模型

合並實例:

1).修改testNameDir1里面的文件新建 文本文檔.txt,然后修改testNameDir2里面的新建文本文檔.txt,然后提交testNameDir2里面的副本

 

 

提交完成之后,然后提交testNameDir1里面的副本(由於A和B都同時協同開發新建 文本文檔.txt文件,並不知道這個文件已經更新了),結果發生了一下沖突

此時會生成一下幾個沖突文件

這時候怎么解決?
   找到發生沖突的文件,右鍵點擊TortoiseSVN--Edit Conflicts編輯手動編輯沖突

  

這時就會彈出編輯沖突的頁面,其中,代表已經增加一行,代表已經刪除一行,代表此行已經通過恢復到原始內容而撤銷修改。
代表的是此行只有空白的修改,沒有實質代碼的改變,代表的是處於沖突狀態,此行已經使用 TortoiseMerge 作為文本編輯器手工修改,
代表的是行處於沖突狀態,但是被空白或行結束符的設置掩蓋。

這時候第二行處於沖突狀態
編輯沖突,右邊窗口右鍵點擊Use this text block,將自己的代碼顯示在可編輯區域,對應的選中區域就在下面可編輯區域,然后改為正確的文件
左邊窗口右鍵點擊Use this text block,是將其他人改的顯示在下面的可編輯區域
點擊Use this whole file的作用是將自己的或者別人的代碼全部顯示在下面的可編輯區域
點擊Use text block from 'mine' before 'theirs'的作用是將自己的和其他人的代碼全部顯示在可編輯區域,但是自己的代碼在前面
點擊Use text block from 'theirs' before 'mine'的作用是將自己的和其他人的代碼全部顯示在可編輯區域,但是別人的代碼在前面
這個時候編輯完成之后,就保存文件,然后選中沖突文件右鍵點擊Resolved,代表已經解決了沖突,如下圖所示


伴隨着自動生成的幾個沖突文件就會消失,然后提交覆蓋原來的文件,這個時候就已經解決了沖突問題
</xxxx”下面的表示其他成員更改的代碼。這個時候就已經解決了沖突問題

窗體底端

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM