svn checkout操作


svn checkout https://svn.com/svn/project

該操作從svn服務器上拉代碼下來,並且建立本地和遠端的文件對應,狀態的關聯。

 

1,和export的區別

svn檢出操作,和export不同的是:checkout會有.svn文件,和svn server端是關聯的;而export只下載文件,沒有.svn文件,和svn server端沒有關系,本地修改不會有狀態標識。

 

2,檢出部分目錄

關鍵參數控制:--depth

--depth ARG : limit operation by depth ARG ('empty', 'files','immediates', or 'infinity')
--set-depth ARG : set new working copy depth to ARG ('exclude','empty', 'files', 'immediates', or 'infinity')

empty:不檢出項目的任何文件;

files沒用過;

immediates:目錄的第一級;

infinity:整個目錄所有文件

案例:

一個項目有很多的tags,很多的branches,一個trunk。好多時候不用關心所有tags,branches,但是會關心branches(tags)下面的第一級目錄。

需求A:檢出整個項目,包含branches,tags,trunk目錄,branches/tags包含第一級目錄,trunk包含全部的代碼

操作1:svn checkout https://svn.com/svn/project --depth=immediates

定位到project目錄

操作2:svn checkout https://svn.com/svn/project/trunk --depth=infinity

操作3:svn checkout https://svn.com/svn/project/branches --depth=immediates

操作4:svn checkout https://svn.com/svn/project/tags --depth=immediates

注意,這個時候會有個問題,如果分支太多,而我們只關心某幾個,我們希望刪除其它無用分支。

操作3的后續操作:1,刪除當前所有或者其中幾個目錄,rm -rf ./*;2,查看當前所有分支,svn list;3,更新需要的分支,svn update myBranch;

需求B:檢出某個branches版本

操作:cd project/branches; svn checkout https://svn.com/svn/project/branches/branch1 --depth=infinity


免責聲明!

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



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