SVN 二 客戶端篇

2021-08-14 04:18:39 字數 2678 閱讀 1749

檢出:從svn同步**到本地

工作副本:本地的**,用於本地開發

提交:完成**開發後,將**同步到svn上

版本:每一次同步便產生新的版本

無版本控制:不在svn的版本控制下的檔案,如新建立的檔案

衝突:因為同步衝突而產生的衝突

鎖定:因為某一方鎖定檔案,無法使用

svn     //版本庫的檢出/更新/提交等
所謂檢出也即是將svn的內容同步到本地

圖形介面訪問:tortoisesvn,ide

//命令列訪問,檢出後檔案有.svn

svn checkout svn://ipaddress

引數:-r

//指定檢出某一版本

svn checkout svn: -r 2 //指定檢出版本2

checkout和export的區別

export的檔案中是沒有.svn的資料夾,只有專案**,是脫離版本控制的。

.svn記錄著工作副本最後一次更新後的檔案狀態,記錄一切變化。

svn add [file|*]   //新增檔案到版本控制

引數:--non-recursive //不新增某一目錄下的子檔案,只新增該目錄

--force //如果某一目錄已在控制中了,該下面的子檔案不會新增,需要加--force

svn commit //提交到svn中,建立新的版本

引數:-m "注釋"

//-m引數必須要加

svn update //更新工作副本

引數:-r //指定更新某一版本

svn delete

file

//從版本庫中刪除檔案或目錄,把服務端上的檔案也刪掉

//刪除檔案後,還需要提交版本

svn commit -m "***"

svn diff file

//版本差異比較

+++是指這次修改的內容

---是上一次版本內容

引數:-r //比較與某一版本的差異

eg.svn diff -r 1:3

//比較版本1和3的差異

svn mkdir //建立目錄並增加到版本控制

svn cat //不檢出工作副本直接檢視指定檔案

svn revert file

//工作版本復原,復原至該版本

引數:--recursive //遞迴掃瞄所有目錄

svn copy [source] [destation] //將檔案進行複製,並且保證在版本控制下

工作副本-》工作副本

工作副本-》版本庫

版本庫-》工作副本(可以跨庫)

版本庫-》版本庫(版本庫分支操作)

條件

1、工作副本長時間未修改

2、工作副本的修改處和更新資料位置相同,即兩人修改了同一處地方

衝突處理

當發現衝突後,讓衝突雙方進行協商,協商出乙個結果後,將這個結果再提交。建議先推遲處理,協商後,在提交。

傳送衝突錯誤後,有多種選項:

svn resolve file

//對file檔案進行衝突處理

df //顯示差異

mc //保持我的**

tc //保留對方**

p //推遲衝突處理,建議使用

最後,需要標記衝突處理完成

svn resolved file
為了防止衝突而採取的方案,但是一般不建議,因為其他人無法對該檔案編輯。可以使用於樹衝突檔案。

svn lock file

//svn鎖定檔案

//當提交檔案後,自動解鎖

svn unlock file

//svn解鎖檔案

svn list

//列出當前目錄下處於版本控制的檔案

引數:--recursive //遞迴列出

-v//顯示版本控制下詳情

svn status //列出工作副本中檔案狀態

狀態:? 無版本控制

d 被標誌刪除

m 被編輯

a 被新增到版本控制

c 檔案有衝突

! 缺失檔案

r 檔案被替換

svn log

//檢視提交的日誌

svn info //檢視工作副本及檔案的詳細資訊

引數:--

xml 輸出格式為xml

eg.svn info --

xml>> info.

xml//輸出到info.xml檔案中

一般乙個專案會有多個分支,乙個主要分支(已發布分支),乙個開發分支。兩個分支互不干擾。

svn cp svn://ip/repos

/trunk svn:/

/ip/repos

/branch -m "create a branch"

一般在專案的起初就有兩個目錄,乙個是trunk目錄為主幹,乙個是branch為分支進行開發。

1、養成經常更新的好習慣,防止版本不一致

svn客戶端命令操作(二)

一 匯入svn原始目錄 root localhost svnpasswd mkdir data qingyun pv mkdir 已建立目錄 data mkdir 已建立目錄 data qingyun root localhost qingyun mkdir trunk branch tags pv...

SVN客戶端安裝

2 從中解壓出features與plugins資料夾,複製到e myeclipse myplugin svn裡面,其它的 xml檔案不要。3 在e myeclipse myeclipse8.5 dropins下新建檔案svn.link,內容是path e myeclipse myplugin svn...

svn客戶端工具

之前用git的時候是命令列和工具一起用。命令列比較簡單方便一些,工具呢就是更加具體一些,結合使用更好。用了git後再用svn會感覺很不爽,只用命令列還感覺可以,最好也安裝個客戶端工具,看起來更加直觀些。smartsvn收費,當然有破解版,但是安全不安全就不知道了。tortoisesvn沒有mac版的...