版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)SVN 管理員使用指南目 錄 TOC o 1-3 h z u Subversion簡介Subversion簡介Subversion是一個自由/開源的版本控制系統(tǒng)。在Subversion管理下,文件和目錄可以超越時空,即Subversion允許數(shù)據(jù)恢復到早期版本,或者是檢查數(shù)據(jù)修改的歷史。Subversion的版本庫可以通過網(wǎng)絡(luò)訪問,從而使用戶可以在不同的電腦上進行操作。從某種程度上來說,允許用戶在各自的空間里修改和管理同一組數(shù)據(jù)可以促進團隊協(xié)作。因為修改不再是單線進行,
2、開發(fā)速度會更快。此外,由于所有的工作都已版本化,也就不必擔心由于錯誤的更改而影響軟件質(zhì)量。它是一個通用系統(tǒng),可以管理任何類型的文件集。Subversion架構(gòu)服務器端保存所有版本數(shù)據(jù)的Subversion版本庫,本地端是Subversion的客戶程序,管理所有版本數(shù)據(jù)的本地映射(工作拷貝),兩端之間是各種各樣的版本庫訪問(RA)層,可以使用網(wǎng)絡(luò)服務(Apache/svnserve)訪問版本庫,也可以繞過網(wǎng)絡(luò)服務器直接訪問版本庫。Subversion組件svn 命令行客戶端程序svnversion 顯示工作拷貝的狀態(tài)(用術(shù)語來說,就是當前項目的修訂版本)svnlook 直接查看Subversio
3、n版本庫的工具svnadmin建立、調(diào)整和修復Subversion版本庫的工具svndumpfilter過濾Subversion版本庫轉(zhuǎn)儲數(shù)據(jù)流的工具mod_dav_svnApache HTTP服務器的一個插件,使版本庫可以通過網(wǎng)絡(luò)訪問svnserve一個單獨運行的服務器程序,可以作為守護進程或由SSH調(diào)用。這是另一種使版本庫可以通過網(wǎng)絡(luò)訪問的方式svnsync一個通過網(wǎng)絡(luò)增量鏡像版本庫的程序Subversion基本流程初始化取出(checkout)版本庫(repos),建立本地工作拷貝(Working Copy)。與repos同步(update),保證將要進行的編輯是最新版本。編輯源代碼(包
4、括創(chuàng)建、修改、刪除)。與repos同步(update),提交(commit)之前先要同步到最新的版本,保證所有在自己之前的有關(guān)提交已經(jīng)在本地有所知曉。解決沖突(resolve conflict)。提交(commit),建議寫上這次提交或變更內(nèi)容的摘要,便于以后查閱。再次執(zhí)行步驟2)。每次開始新的編輯前的同步repos很重要,另外經(jīng)常地update,特別是多人項目中。如果每次提交(commit)前不進行更新(update)的到最新的版本的話,svn會提示當前的拷貝過期,需要更新。安裝SVN 服務安裝SVN和TortoiseSVN下載SVN服務器安裝文件:svn-1.4.6-setup.exe 下
5、載客戶端安裝文件:TortoiseSVN-6974-win32-svn-1.6.5,然后運行安裝,安裝成功后必須重啟計算機。也可以根據(jù)需要加載中文語言包(不建議使用)。在任意位置點擊右鍵,出現(xiàn)下面圖示即表示TortoiseSVN安裝成功。創(chuàng)建SVN資源庫SVN資源庫的創(chuàng)建有兩種方式:命令行方式和客戶端方式。命令行方式:svnadmin create D:svnrepos(注意目錄路徑名區(qū)分大小寫)客戶端方式:通過TortiseSVN來創(chuàng)建,在本地新建目錄D:svnrepos,選中文件夾repos,右擊“TortoiseSVNCreate repository here”庫類型選擇默認的FSFS
6、,創(chuàng)建成功后會在D:svnrepo目錄下出現(xiàn)若干文件和文件夾,可以看到三個配置文件authz,passwd,svnserve.conf。其中svnserve.conf為服務配置文件(存放全局訪問控制信息),passwd為訪問資源庫的認證文件,authz為認證后的賬戶訪問權(quán)限授權(quán)文件,可根據(jù)需要進行添加和授權(quán)。后面在用戶及權(quán)限管理處會詳細介紹。創(chuàng)建SVNserver服務運行cmd命令輸入:sc create svnserve binpath= C:Subversionbinsvnserve.exe -service -root D:svnrepos displayname= svnserve d
7、epend= tcpip start= auto上述命令可以實現(xiàn)名為“svnserve”服務的后臺創(chuàng)建和自動啟動。運行SVNserver服務有兩種方式運行svnserver服務:Cmd命令行輸入:net start svnserve(停止svnserver服務用:NET STOP svnserve;刪除svnserver服務用:net delete svnserve)控制面板管理工具服務:啟動“svnserve”服務用戶及權(quán)限管理在 Subversion 的使用當中,存在“認證”、“授權(quán)”兩個概念。認證,即 authentication,是指用戶名與密碼的認證。授權(quán),即authorizatio
8、n ,是指某用戶對某個目錄是否具備讀、寫權(quán)限的一種審核。這兩者配合作用,就組成了 Subversion 的整個賬戶管理體系。為了使用用戶及權(quán)限管理功能文件,必須在服務器端打開D:svn reposconfsvnserver.conf,去掉下面四行前面的注釋,并去掉前面的空格:# anon-access = read# auth-access = write# password-db = passwd# authz-db = authz并將read參數(shù)修改為none,表明禁止匿名用戶訪問版本控制庫。注意:權(quán)限配置文件中出現(xiàn)的用戶名必須已在用戶配置文件中定義。對權(quán)限配置文件的修改立即生效,不必重啟
9、svn。為了實現(xiàn)多項目的權(quán)限管理,多個項目共享相同的位于根資源庫下的配置及認證文件。用戶管理資源庫創(chuàng)建后,出現(xiàn)的passwd文件為訪問資源庫的認證文件(用戶名和密碼),即在此文件夾下可以添加、刪除用戶打開D:SVNServerreposconfpasswd,添加用戶admin、sc1/sc2、tom1/tom2,并設(shè)置相應的密碼:users# harry = harryssecret# sally = sallyssecret admin = 1234 sc1 = 1234 sc2 = 1234 tom1 = 1234 tom2= 1234權(quán)限管理Subversion 提供了面向目錄的賬戶權(quán)限
10、管理功能,通過它,我們就可以很精確地實現(xiàn)項目目錄的訪問控制。創(chuàng)建完資源庫后,出現(xiàn)的authz為認證后的賬戶訪問權(quán)限授權(quán)文件。假設(shè)目錄結(jié)構(gòu)如下:Projectdevtesttest1test2要求:admin對所有目錄可讀可寫Dev_group對dev目錄可讀可寫,Test_group無權(quán)限Test_group對test目錄可讀可寫,Dev_group無權(quán)限打開D:SVNServer reposconfauthz,對上面的用戶添加分組:groups# harry_and_sally = harry,sally Admin_group = admin Dev_group = sc1,sc2 Tes
11、t_group1 = tom1, tom2/ /對根目錄的權(quán)限控制admin_group = rw* = r/Cloud /dev /對具體目錄的權(quán)限控制 admin_group = rw Develop_group = rw* = /其他用戶無權(quán)限/Cloud/test /對具體目錄的權(quán)限控制 admin_group = rw Test_group = r* = 備注:如果需要控制的文件夾為中文名稱,需要把authz轉(zhuǎn)換為UTF-8格式,建議使用UltraEdit的“文件轉(zhuǎn)換ASCII to UTF-8”(我嘗試過記事本轉(zhuǎn)換未遂)。若project下新增文件夾,一定要對新文件夾增加權(quán)限控制,
12、否則所有人默認為可讀。SVN基本使用導入/導出(import/export)svn import是將未版本化文件導入版本庫的最快方法。具體使用方法舉例:創(chuàng)建文件夾D:/ project1,project1文件夾下分別創(chuàng)建三個文件夾trunk,tags,branches,右鍵打開repository-browser,在URL中輸入project1所在路徑,然后點擊ok即可成功導入數(shù)據(jù)至版本庫,截圖如下。注:一個項目的生存周期不是單線的,常常有一些分支、發(fā)布版或者特定功能的實驗性加入等事件,repos的布局需要進行一定設(shè)計來支持這些“事件”。常見的布局是這樣的:trunk是項目主體存放位置,bra
13、nches是項目的各種分支的存放,tags用于公開發(fā)布的版本的存檔,類似與milestone。這是一般的svn項目中的repos布局。Export操作則相反,在版本庫中選擇要導出的文件,右鍵export,選擇導出到本地的路徑,點擊ok即可。初始化檢出(checkout)更新修改(update)查看日志信息(show log)取消修改(revert)提交修改(commit)合并信息(merge)創(chuàng)建/刪除/重命名加鎖/釋放鎖(get/release lock)章節(jié)4.24.9具體操作可以參考TortoiseSVN使用指南V1.0.doc添加、刪除、重命名(add、delete、rename) 以
14、添加一個文件為例,在本地版本庫受控環(huán)境中新建一個文件0.doc,按照圖示進行操作:圖標變?yōu)橄聢D所示,標明該文件已經(jīng)被加載入了版本庫,但是沒有執(zhí)行commit:右鍵svn commit,提交至版本庫。圖標變?yōu)榫G色對勾,至此該文件已經(jīng)被成功添加至版本庫中??截悾╟opy)可以拷貝至本地目錄,也可以拷貝至上面界面中的其他目錄。查看修改信息(check for modifications)在受控版本庫環(huán)境中右鍵TortoiseSVN- check for modifications,可以查看當前文件或文件夾的修改歷史信息。分支/標記(branch/tag)實際也是svn copy操作,首先要把需要打標
15、簽的或者做版本標記的文件checkout到本地,右鍵TortoiseSVN- branch/tag,輸入版本的標記及存放路徑即可。就可將整個目錄分支(branch)出去。或點擊某個文件將文件單獨分支(branch)。界面上出現(xiàn)三個選項:head revision in the repository:新分支直接從倉庫中的最新版本里復制出來。不需要從你的工作副本中傳輸任何數(shù)據(jù)。Specific revision in repository:可以在版本庫中選擇具體的revision,直接在服務器端copy指定版本。Working Copy:新分支是一個當前的工作副本的完全拷貝。如果想把工作副本自動切
16、換到最新創(chuàng)建的分支,使用“轉(zhuǎn)換工作副本至新分支/標記”選擇框。但是首先要確認你的工作副本沒有被修改,如果有修改的話,當你轉(zhuǎn)換后這些修改將會混合進你的工作副本分支里。一般選擇head revision對版本進行打標簽操作,執(zhí)行完畢可以在相應的路徑下看到新標簽(也可以給一個版本打版本號標簽V1.0等):如果你想要在一個已經(jīng)標記的發(fā)布版上做更多的修改。正確的操作方法是先從標記處建立一個新分支然后提交這個分支。在這個分支的基礎(chǔ)上進行修改后再從這個新分支上建立一個新標記,例如Version_1.0.1。如果你修改了一個從分支建立的工作副本然后又提交了這個副本,那么所有的修改會轉(zhuǎn)到一個新分支里而不是主干,
17、僅僅是存儲了修改的數(shù)據(jù)。創(chuàng)建并應用補丁(create/apply patch) 補丁文件只是簡單地用統(tǒng)一的差異描述文件顯示出你的工作副本和基線版本的不同點。由于對于一個項目的代碼,任何開發(fā)人員可能都具備讀寫的權(quán)限,這個代碼可能永遠都會處于不穩(wěn)定狀態(tài),而且很有可能永遠的癱瘓下去。在這種情況下,修改需要以補丁文件的形式先遞交到有寫訪問權(quán)限的開發(fā)組。開發(fā)組可以先對該補丁文件進行審查,然后決定將其提交到倉庫里或者是退還給具體的開發(fā)人員。 首先對checkout到本地的初始副本進行修改,假設(shè)修改了2個文件,本地工作副本右鍵create patch,會顯示所有對于初始副本的修改,如下圖示:可以用一個自己選
18、擇的文件名來保存這個補丁文件,補丁文件可以有任意的擴展名,但是按人一般習慣,人們都是用.patch或.diff作擴展名,現(xiàn)在已經(jīng)做好提交你的補丁文件的準備了,此處命名為36.Patch。開始應用補丁,系統(tǒng)會提示你輸入工作副本的位置,輸入工作副本位置即可:一旦你選定了補丁文件和工作副本的位置,TortoiseMerge就會把補丁文件合并到你的工作副本中。系統(tǒng)會彈出一個小窗口列出所有被更改了的文件。雙擊每一個文件,檢查所做的改變,然后保存合并后的文件。遠程開發(fā)者的補丁現(xiàn)在已經(jīng)應用到了你的工作副本上,你需要提交它以使每一個人都可以從代碼庫訪問到這些修改。備份/恢復資源庫版本控制關(guān)鍵的是保證數(shù)據(jù)的安全
19、性,不能因為磁盤損壞,程序故障造成版本庫無可挽回的錯誤,為此必須制定較完備的備份策略。在Subversion中,我們有三種備份方式:完全備份,增量備份和同步版本庫。完全備份完全備份直接使用拷貝命令,將版本庫目錄拷貝到備份目錄上,就可以了。但是這樣不是很安全的方式,因為如果在拷貝時版本庫發(fā)生變化,將會造成備份的結(jié)果不夠準確,失去備份的作用,為此Subversion提供了“svnadmin hotcopy”命令。svnadmin hotcopy 資源庫的源路徑 資源庫的目標存放路徑。增量備份完全備份非常簡單,但是也是有代價的,當版本庫很大時,經(jīng)常進行完全備份是不現(xiàn)實的,也沒有必要,就用到了增量備份
20、,svnadmin dump命令。通過dump命令將資源庫導出到一個文件中,可以整個庫導出或者進行增量導出,然后可以通過load的方式導入到新庫中?;具^程如下:svnadmin dump repos repos.dump-將當前目錄下面的資源庫repos導出到一個文件中svnadmin load new_repos dumpfile2上面命令實現(xiàn)了對修訂版本15進行增量的備份,其中的輸出文件dumpfile2只保存了修訂版本15更改的內(nèi)容。版本庫同步Subversion 1.4增加了同步機制,可以用來實現(xiàn)版本庫的備份或鏡像。對目標庫初始化svnsync init svn:/localhost
21、/project2 svn:/localhost/project1 其中project2是目標的版本庫,而project1是源版本庫。其中的目標版本庫必須為空,而且必須允許修訂版本屬性的修改,也就是在目標的版本庫的hooks目錄里添加一個文件pre-revprop-change.bat,內(nèi)容為空。同步project2到project1svnsync sync svn:/localhost/project2 這時候你update一下你的project2的一個工作拷貝,就會發(fā)現(xiàn)有了project1的所有內(nèi)容。如果project1又有提交,這時候project2的版本庫無法看到最新的變化,還需要再運
22、行一遍sync操作,這樣才能將最新的變化同步。需要注意的是,目標版本庫必須是只讀的,如果目標版本庫發(fā)生了變更,則無法繼續(xù)同步了。同步歷史屬性的修改因為同步不會更新對歷史屬性的修改,所以svnsync還有子命令copy-revprops,可以同步某個版本的屬性。 鉤子自動同步希望在每次提交時同步,則需要在源版本庫中增加post-commit鉤子腳本,內(nèi)容如下:echo offset SVN_HOME=C:Program FilesSubversion%SVN_HOME%binsvnsync sync -non-interactive svn:/localhost/project2把以上內(nèi)容保存為
23、post-commit.bat,然后放到版本庫project1下的hooks目錄下,這樣project1每次提交,都會引起project2的同步。刪除資源庫版本(revision)關(guān)鍵字HEAD、 BASE、COMMITTED、PREV是指定版本號時可以使用的一些保留字。各自的含義大致介紹如下:HEAD:資源庫中的最新版本,實際是反映的“當 前版本管理中的最新”。BASE:本地工作拷貝中的初始版本,是指最后一次更新(update)操作或者取出(initial checkout)操作時取出的那些文件版本。COMMITTED:在BASE版本之前(或BASE)一個項目最后修改的版本。PREV:一個項
24、目最后修改版本之前的那個版本(技術(shù)上為commit-1)。統(tǒng)計信息(statistics)統(tǒng)計信息,可以顯示一些你感興趣的關(guān)于日志對話框中版本的信息,顯示已經(jīng)有幾個作者做了工作,他們各自提交的次數(shù),按周的統(tǒng)計等。選中文件或文件夾,右鍵show log點擊statistics禁用密碼緩存許多服務器配置為每次請求要求認證,對被強制每次輸入用戶名密碼,Subversion客戶端對此有一個修補,存在一個在磁盤上保存認證憑證緩存的系統(tǒng),缺省情況下,當一個命令行客戶端成功的響應了服務器的認證請求,它會保存一個認證文件到用戶的私有運行配置區(qū)。當客戶端接收到一個認證請求,它會首先查找用戶磁盤中的認證憑證緩存,
25、如果沒有發(fā)現(xiàn),或者是緩存的憑證認證失敗,客戶端會提示用戶提供需要的信息。若很在乎密碼緩存,可以永久關(guān)閉緩存或每次執(zhí)行命令時說明。在某次命令關(guān)閉密碼緩存可以在命令中使用-no-auth-cache選項,如果永久關(guān)閉緩存,可以在本機的Subversion的配置文件中注釋掉store-passwords = no行,就不會有憑證緩存在磁盤了。TortoiseSVN設(shè)置任意位置點擊右鍵,按照如下圖示操作:進入Settings設(shè)置界面,共有常規(guī)設(shè)置、圖標集重載設(shè)置、網(wǎng)絡(luò)設(shè)置、日志緩存設(shè)置及鉤子腳本設(shè)置等幾個選項:常規(guī)設(shè)置(General)常規(guī)設(shè)置包括四個部分:Context Menu、Colors、Di
26、alogs1、Dialogs2。General設(shè)置界面:設(shè)置用戶的界面語言。設(shè)置是否每周自動檢查最新版本??梢圆榭碿onfigure設(shè)置系統(tǒng)聲音屬性。設(shè)置全局忽略樣式,那些符合模式的文件,在執(zhí)行導入操作時同樣被忽略。通過在模式框中輸入文件名或擴展名來忽略文件或文件夾,不同的模式之間以空格分隔。Subversion配置文件的更改。例如:上面4.19節(jié)描述的禁用密碼緩存即是在此處修改。建議禁用Set file dates to the“l(fā)ast commit time”。建議禁用Use _svn instead of .svn directories。Context Menu設(shè)置界面:設(shè)置在Tor
27、toiseSVN的主上下文菜單中哪些條目可以直接在鼠標右鍵菜單顯示,哪些在TortoiseSVN子菜單顯示。默認情況下很多項未被勾選,只在子菜單顯示,根據(jù)需要及個人使用習慣設(shè)定。設(shè)置svn:needs-lock屬性的文件的Get Lock出現(xiàn)在頂級主菜單中。Dialogs1設(shè)置界面:設(shè)置默認日志信息數(shù)。設(shè)置日志信息字體和字號,作用范圍為版本日志對話框的中間窗格,以及提交對話框時填寫日志信息的窗格。設(shè)置日志信息是否使用短日期/時間格式。是否在日志列表中設(shè)置雙擊來實現(xiàn)與prev revision的比較。是否設(shè)置當前工作副本為合并的起始URL。缺省檢出路徑/檢出URL。進程設(shè)置選項,下拉列表含義:C
28、lose manually:手動關(guān)閉(推薦設(shè)置),這項設(shè)置允許你選擇在何種情況下關(guān)閉對話框。Auto-close if no merge,adds or deletes:如無合并、添加、刪除操作,自動關(guān)閉。如果有簡單更新的話,進程對話框?qū)㈥P(guān)閉。但如果版本庫的更改和你的內(nèi)容進行了合并,或若有任何文件被添加或刪除,對話框?qū)⒈3执蜷_。若操作中發(fā)生什么沖突和錯誤這些對話框也將同樣保持打開。Auto-close for local operations:對本地操作自動關(guān)閉,但在做遠程操作時對話框?qū)⒈3执蜷_。Auto-close if no conflicts:無沖突時自動關(guān)閉。僅在發(fā)生了沖突或錯誤,對話
29、框保持打開。即使在無合并、添加、刪除操作時也同樣關(guān)閉對話框。Auto-close if no errors:無錯誤時,自動關(guān)閉。即使在有沖突發(fā)生時也會關(guān)閉。維持對話框打開的唯一條件是發(fā)生了錯誤,使得Subversion無法完成任務。Dialogs2設(shè)置界面:遞歸處理未進行版本控制的文件夾。若這個選項框被選中(默認狀態(tài)),那么一個非版本控制的文件夾,不論在添加、提交或檢查修改時顯示的是什么狀態(tài),它的每個子文件和子文件夾都要同樣顯示。取消選擇將減少這些對話框中的混亂程度,但是選擇添加一個非版本控制的文件夾,將會非遞歸地添加。自動完成文件路徑和關(guān)鍵詞。自動完成分析的超時時間(秒)。僅在設(shè)置了tsvn
30、:projectlanguage時才進行拼寫檢查,在進行所有提交操作時都不進行拼寫檢查項,后拼寫檢查功能將在項目屬性做出明確要求時才生效。設(shè)置日志歷史信息中保留的最大條目數(shù)量。設(shè)置如果提交失敗,自動重新打開提交和分支/標簽對話框。自動選擇項目。啟動時連接版本庫,可以設(shè)置是使版本庫檢查的動作每次自動啟動。在鎖定之前顯示加鎖對話框,若使用tsvn:lockmsgminsize屬性,那么不管你是否設(shè)置,都會看到加鎖對話框,因為此項目需要加鎖信息。Colors設(shè)置界面:可以按照個人習慣來配置使用的各種操作的文本顏色。圖標疊加(Icon overlays)Icon Overlays設(shè)置界面:緩存狀態(tài)。D
31、efault:設(shè)置一個節(jié)點是否是緩存所有狀態(tài)信息在一個單獨的進程TSVNCache.exe中,該進程在C:Program FilesTortoiseSVNbin目錄下。Shell:緩存在外殼擴展dll中直接完成。None:TSVN在瀏覽器里就完全不去獲取狀態(tài),版本控制下的文件除獲得正常的圖標重載外,將不會獲得任何圖標重載類型。設(shè)置驅(qū)動類型的選擇。選擇/排除在某個指定路徑上或以該指定路徑為開始路徑的所有子目錄文件上的圖標重載。Icon Set設(shè)置界面:在上圖的Icon Set下拉列表中可以選擇不同的圖標集顯示風格(更改圖標集后必須重啟計算機才能夠生效)。也可以設(shè)置不同的圖標視圖方式:List V
32、iew或Symbol View。網(wǎng)絡(luò)設(shè)置(network)Network設(shè)置界面:設(shè)置是否使用代理服務器。代理設(shè)置項有:服務器地址、端口、用戶名/密碼、編輯Subversion server file等。設(shè)置SSH客戶端程序,用來支持TortoiseSVN使用SVN+SSH協(xié)議的版本庫建立安全連接,建議使用TortoisePlink.exe,目前已被集成在TortoiseSVN中。安裝TortoiseSVN的時候已經(jīng)附帶安裝,該文件的存放路徑是C:Program FilesTortoiseSVNbinTortoisePlink.exe。日志緩存設(shè)置(log caching)Log Cachin
33、g設(shè)置界面:全局設(shè)置:是否啟用日志緩存,是否緩存未知的URL及UUID。設(shè)置在不能夠訪問資源庫時的處理方式,在下拉列表中共分三種處理辦法。Timeout before updating the HEAD revision:設(shè)置為0可以及時在日志信息中查看最新的revision日志信息。Days of inactivity until small caches get removed:控制緩存清除的時間(天),可以設(shè)置間隔多長時間對緩存執(zhí)行清理操作。Maximum size of removed inactive caches:目前已經(jīng)激活的最大緩存空間(KB)。Maximum number o
34、f tool failures before cache removal:緩存清除前允許失敗的最大次數(shù),建議此處設(shè)置為0,否則發(fā)生崩潰時,日志會自動刪除而無法從日志查看系統(tǒng)或工具崩潰的原因。Cached Repositories設(shè)置界面:設(shè)置本地緩存的資源庫的資源庫URL、緩存大?。↘B)??梢赃x擇其中的一個URL執(zhí)行下面的update、export和delete操作。查看details可以查看詳細的日志緩存統(tǒng)計信息。鉤子腳本設(shè)置(Hook Scripts)點擊Hook Scripts設(shè)置界面中的Add按鈕出現(xiàn)如下界面:Configure hook scripts設(shè)置界面:可以設(shè)置鉤子腳本的類
35、型,共6種(按照對鉤子腳本的調(diào)用時間分): Start Commit Hook:開始提交。Pre-Commit Hook:提交之前。Post-Commit Hook:提交之后。Start Update Hook:開始更新。Pre-Update Hook:更新之前。Post-Update Hook:更新之后。本地工作副本的路徑。存放鉤子腳本的路徑,一般是資源庫的本地路徑/hooks/(鉤子腳本類型)。設(shè)置Subversion 操作是否直到鉤子完成才結(jié)束。設(shè)置是否在運行時隱藏鉤子腳本。外部程序設(shè)置(external programs)可以自定義自己的差異查看器、統(tǒng)一的差異查看器和合并工具,以及差異
36、查看/合并工具的高級設(shè)置。Diff Viewer設(shè)置界面:一般選擇默認的差異查看工具即可,可以在subversion屬性中選擇第三方工具進行差異查看,也可以在命令行設(shè)置參數(shù)來選擇對特定文件的相應操作。外部程序參數(shù)選擇:%base:沒更改的原始文件%bname:原始文件的窗口標題%mine:你更改過的新文件%yname:你新文件的窗口標題上面參數(shù)的順序?qū)⒁蕾囉谀闶褂玫耐獠坎町惒榭闯绦颍c擊界面上的advanced按鈕選擇)。Merge Tool設(shè)置界面:一般選擇默認的即可,其余設(shè)置可以參考差異查看的使用方式。外部合并程序的參數(shù)選擇:%base:沒有被你或他人更改的原始文件%bname:原始文件的
37、窗口標題%mine:你更改過的新文件%yname:你新文件的窗口標題%theirs:檔案庫中存放的文件%tname:檔案庫中文件的窗口標題%merged:發(fā)生沖突的文件,同時將被合并后的文件替換%mname:合并文件的窗口標題上面參數(shù)的順序?qū)⒁蕾囉谀闶褂玫耐獠坎町惒榭闯绦颍c擊界面上的advanced按鈕選擇)。Unified Diff Viewer設(shè)置界面:統(tǒng)一的差異查看器一般選擇默認的即可,不需要任何參數(shù)。Saved Data設(shè)置界面:TortoiseSVN保存了用過的URL歷史記錄、日志信息輸入框、顯示日志對話框、窗口大小及位置、認證設(shè)置和動作日志等信息,可以點擊clear清空這些數(shù)據(jù)緩
38、存。TortoiseBlame設(shè)置界面:設(shè)置使用的顏色、字體和制表(文件中出現(xiàn)的制表字符用多少空格擴展)。Revision Graph設(shè)置界面:查看經(jīng)典的版本布局樣式,一般是針對源代碼的版本控制,設(shè)置tags、branches和trunk三個文件夾分支,存放代碼的不同版本。為了幫助挑選節(jié)點分類,您可以允許修改圖形來混合顏色。Revision Graph colors設(shè)置界面:定義版本分支圖中對各種節(jié)點的顏色,便于識別、分析和查看。TortoiseSVN基本命令本文檔簡單介紹svn子命令、svnadmin、svnlook、svnserve命令的使用,具體的選項使用可以安裝命令行包去學習使用。Sv
39、n子命令Svn add -添加文件,目錄或符號鏈。添加文件,目錄或符號鏈到你的工作拷貝并且預定添加到版本庫,可以使用svn revert取消預定提交。Svn blame -顯示特定文件和URL內(nèi)嵌的作者和修訂版本信息。Svn cat -輸出特定文件或URL得內(nèi)容。Svn checkout -從版本庫中取出一個工作拷貝。Svn cleanup -遞歸清理工作拷貝。Svn commit -將修改從工作拷貝發(fā)送至版本庫。Svn copy -拷貝工作拷貝的一個文件或目錄到版本庫。Svn delete -從工作拷貝或版本庫刪除一個項目。Svn diff -比較兩條路徑的區(qū)別。Svn export -導出
40、一個干凈的目錄樹。Svn help -幫助。Svn import -遞歸提交一個路徑的拷貝到URL。Svn info -打印PATH的信息。Svn list -列出版本庫目錄的條目。Svn log -顯示提交日志信息。Svn merge -應用兩組源文件的差別到工作拷貝路徑。Svn mkdir -創(chuàng)建一個納入版本控制的新目錄。Svn move -移動一個文件或目錄。Svn propdel -刪除一個項目的一個屬性。Svn propedit -修改一個或多個版本控制之下文件的屬性。Svn propget -打印一個屬性的值。Svn proplist -列出所有的屬性。Svn propset -設(shè)
41、置文件、目錄或者修訂版本的屬性propname為propval。Svn resolved -刪除工作拷貝文件或目錄的沖突狀態(tài)。Svn revert -取消所有的本地編輯。Svn status -打印工作拷貝文件和目錄的狀態(tài)。Svn switch -把工作拷貝更新到別的URL。Svn update -更新工作拷貝。Svnadminsvnlook是一個用來監(jiān)控和修改Subversion版本庫的管理工具,svnadmin直接訪問版本庫,它通過路徑而不是URL訪問版本庫。Svnadmin Switchessvnadmin -bdb-log-keep -關(guān)閉數(shù)據(jù)庫日志自動日志刪除功能(Berkeley
42、DB特定)。svnadmin -bdb-txn-nosync -當提交數(shù)據(jù)庫事務時關(guān)閉fsync(Berkeley DB特定)。svnadmin -bypass-hooks -繞過版本庫鉤子系統(tǒng)。svnadmin -clean-loss -刪除不使用的Berkeley DB日志。svnadmin -force-uuid -缺省情況下,當版本庫加載已經(jīng)包含修訂版本的數(shù)據(jù)時,導致版本庫的UUID設(shè)置為流中的UUID。svnadmin -ignore-uuid -缺省情況下,當加載空版本時,svnadmin會忽略來自流中的UUID。svnadmin incremental -導出一個修訂版本針對前一
43、個修訂版本的區(qū)別,而不是所有的結(jié)果。svnadmin -parent-dir DIR -當加載一個轉(zhuǎn)儲文件時,根路徑為DIR而不是svnadmin -revision (-r) ARG -指定一個操作的修訂版本。svnadmin quit -不顯示通常的過程只顯示錯誤。Svnadmin Subcommandssvnadmin create -創(chuàng)建一個新的空的版本庫,文件非空會報錯。svnadmin deltify -修訂版本范圍的路徑的增量變化。svnadmin dump -將文件系統(tǒng)的內(nèi)容轉(zhuǎn)存到標準輸出。svnadmin help -幫助。svnadmin hotcopy -熱備份版本庫。s
44、vnadmin list-dblogs -詢問Berkeley DB在給定的Subversion版本庫有哪些日志文件存在(只有版本庫后端使用bdb時使用)。svnadmin list-unused-dblogs -詢問Berkeley DB哪些日志文件可以安全地刪除(只有版本庫后端使用bdb時使用)。svnadmin load -從標準輸出讀取“轉(zhuǎn)儲格式”格式流。svnadmin lstxns -打印所有未提交的事務名稱。svnadmin recover -將版本庫恢復到穩(wěn)定狀態(tài)(只有版本庫后端使用bdb時使用)。svnadmin rmtxns -從版本庫中刪除事務。svnadmin setlog -設(shè)置某個修訂版本的信息。svnadmin vertify -驗證版本庫保存的數(shù)據(jù)。Svnlooksvnlook是檢驗和查看Subversion版本庫的命令行工具,不會修改版本庫,通常被版本庫鉤子使用。svnlook直接訪問版本庫,它通過路徑而不是URL訪問版本庫。如果沒有指定版本或事物,缺省的是版本庫的最新修訂版本。Svnlook選項svnlook -no-diff-deleted -防止svnlook打印刪除文件的區(qū)別,缺省行為方式是黨一個文件在一次事物/修訂版本中刪除后,得到的結(jié)果與保留這個文件的內(nèi)容
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度房地產(chǎn)中介客戶信息保密協(xié)議范本2篇
- 二零二五年三方二手車交易風險防范及保險合同2篇
- 二零二五年度企業(yè)合同管理培訓與人才發(fā)展意見建議書3篇
- 護理本科專業(yè)課課程思政教學評價指標體系的構(gòu)建
- 服裝知識培訓課件
- 2025版綠色家居裝飾工程勞務合作合同2篇
- Unit 4《Lesson 3 My tidy bag》(說課稿)-2024-2025學年粵人版(2024)英語三年級上冊
- 工業(yè)機器人智能生產(chǎn)線升級改造擴建項目可行性研究報告寫作模板-備案審批
- 二零二五年度房地產(chǎn)項目股權(quán)劃轉(zhuǎn)及融資合作協(xié)議3篇
- 湖南省長沙市2025年新高考適應性考試生物學模擬試題(含答案)
- 智能制造企業(yè)數(shù)字化轉(zhuǎn)型建設(shè)方案
- (隱蔽)工程現(xiàn)場收方計量記錄表
- 病理生理學課件脂代謝紊亂
- 教師幽默朗誦節(jié)目《我愛上班》
- 《細胞工程學》考試復習題庫(帶答案)
- 中學課堂教學評價量表
- 食堂食材配送以及售后服務方案
- 稱量與天平培訓試題及答案
- 塊單項活動教學材料教案丹霞地貌
- 青年人應該如何樹立正確的人生觀
- 開封辦公樓頂發(fā)光字制作預算單
評論
0/150
提交評論