tortoisesvn是windows下其中乙個非常優秀的svn客戶端工具。通過使用它,我們可以視覺化的管理我們的版本庫。不過由於它只是乙個客戶端,所以它不能對版本庫進行許可權管理。
tortoisesvn不是乙個獨立的視窗程式,而是整合在windows右鍵選單中,使用起來比較方便。
tortoisesvn每個選單項都表示什麼意思
svn update
從版本庫中獲取最新的乙份工作拷貝,關於工作拷貝和版本庫的關係,參見下面的文件。
--------------
svn commit
把自己工作拷貝所做的修改提交到版本庫中,這樣別人在獲取最新版本(update)的時候就可以看到你的修改了。
--------------
show log
顯示當前檔案(夾)的所有修改歷史。svn支援檔案以及資料夾獨立的版本追溯。
----------
repo-browser
檢視當前版本庫,這是tortoisesvn檢視版本庫的入口,通過這個選單項,我們就可以進入配置庫的資源管理器,然後就可以對配置庫的資料夾進行各種管理,相當於我們開啟我的電腦進行檔案管理一樣。
----------
revision graph
檢視當前專案或檔案的修訂歷史圖示。如果專案比較大型的話,一般會建多個分支,並且多個里程碑(穩定版本發布),通過這裡,我們就可以看到專案的全貌。
----------
resolved
如果當前工作拷貝和版本庫上的有衝突,不能自動合併到一起,那麼當你提交修改的時候,tortoisesvn就會提示你存在衝突,這時候你就可以通過這個選單項來解決衝突。衝突的解決有兩種,一種是保留某乙份拷貝,例如使用配置庫覆蓋當前工作拷貝,或者反過來。還有一種是手動解決衝突,對於文字檔案,可以使用tortoisesvn自帶的工具,它會列出存在衝突的地方,然後你就可以和提交者討論怎麼解決這個衝突。同時它也對word有很好的支援
--------------
update to revision
從版本庫中獲取某乙個歷史版本。這個功能主要是方便檢視歷史版本用,而不是回滾版本。注意:獲取下來之後,對這個檔案不建議進行任何操作。如果你做了修改,那麼當你提交的時候svn會提示你,當前版本已失效(即不是最新版本),無法提交,需要先update一下。這樣你所做的修改也就白費了。
---------------
revert
如果你對工作拷貝做了一些修改,但是你又不想要了,那麼你可以使用這個選項把所做的修改撤銷
--------------
cleanup
如果當前工作拷貝有任何問題的話,可以使用這個選項進行修正。例如,有些檔案原來是版本控制的,但是你沒有通過tortoisesvn就直接刪除了,但是tortoisesvn還是保留著原來的資訊(每個資料夾下都有乙個.svn的隱藏資料夾,存放著當前資料夾下所有資料夾的版本資訊)所以這就會產生一些衝突。可以使用cleanup來清理一下。
------------------
getlock/releaselock
如果你不想別人修改某個檔案的話,那麼你就可以把這個檔案進行加鎖,這樣可以保證只有你對這個檔案有修改權。除非你釋放了鎖,否則別人不可能提交任何修改到配置庫中
-----------------
branch/tag
branch是分支的意思。例如當在設計乙個東西的時候,不同的人有不同的實現,但是沒有經過實踐檢驗,誰也不想直接覆蓋掉其他人的設計,所以可以引出不同的分支。將來如果需要,可以將這些分支進行合併。
tag是打標籤的意思。通常當專案開發到一定程度,已經可以穩定執行的時候,可以對其打上乙個標籤,作為穩定版。將來可以方便的找到某個特定的版本(當然我們也可以使用版本號來查詢,但是數字畢竟不方便)
svn對於分支和標籤都是採用類似linux下硬鏈結的方式(同乙個檔案可以存在兩個地方,刪除乙個不會影響另乙個,所做修改會影響另乙個),來管理檔案的,而不是簡單的複製乙份檔案的拷貝,所以不會有浪費儲存空間的問題存在。
-------------
switch
主要用來切換到不同分支用的
-------------
merge
合併當前的工作拷貝和版本庫上相應的檔案
-------------
export
這個功能是方便我們部署用。當我們需要發布乙個穩定版本時,就可以使用這個功能將整個工程匯出到某個資料夾,新的資料夾將不會包含任何版本資訊了。
-------------
relocate
當我們版本庫發生轉移的時候就需要用到這個功能了。例如我原先的版本庫是建在u盤上的,現在轉移到(複製整個配置庫資料夾)開發伺服器上,使用https代替檔案系統的訪問。因此就需要將原來的工作拷貝的目標版本庫重新定位到開發伺服器上。
-------------
add將沒有被版本控制的檔案新增到版本庫中,注意:add操作不會自動提交到配置庫中,必須再次commit。你也可以在上層資料夾直接commit來新增尚未版本控制的檔案(夾)
-------------
create patch
*****===
常見錯誤解決方案:
【svn *** is locked】
選中檔案/資料夾,右鍵、svn、「clean up」後update就可以了,如果執行失敗,會提示相應目錄下的資料夾出現問題,按照提示對目錄下資料夾執行右鍵、svn、「clean up」後update,基本就可以解決了
ORACLE ERROR CODE代表的意思
標準的 sqlexception 提供了乙個標準化的資訊段 sqlstate 和乙個 商特有的資訊段 errorcode 正如大多數的資料庫和它們的 jdbc 驅動程式實現一樣,oracle 資料庫和 jdbc 驅動程式通過 商特有的錯誤碼所提供的關於問題的詳細資訊要比通過 sqlexception...
SVN更新提示衝突時各選項的意思
svn up時,提示無法更新,使用svn up force強制更新 有時會彈出如下提示 conflict discovered in css home.css select p postpone,df diff full,e edit,mc mine conflict,tc theirs confl...
「always 」中 所代表的意思
1.在verilog中,只包括該模組中的所有型號,沒在該模組 現的訊號不包含於 在絕大多數變成語言中,都是表示包括所有可能,那麼在verilog中是不是也一樣呢?為此,我用modelsim做了乙個實驗。被測試的電路 module test in,en,rst n,out input 1 0 in i...