經(jīng)驗總結(jié):Subversion 使用命令行訪問項目源文件 上篇
之前已經(jīng)學(xué)習(xí)了Linux下Subversion命令,本文再來回顧一下Subversion命令問題,如果掌握了Subversion命令你就可以很容易的對Subversion進(jìn)行相關(guān)操作了,希望大家共同進(jìn)步。
命令行Subversion入門
如果您參與的項目正在使用Subversion進(jìn)行版本控制,您將需要使用Subversion訪問和更改項目源文件。您可以點(diǎn)擊項目的左側(cè)導(dǎo)航窗格上的“Subversion”鏈接,在線瀏覽源代碼以查看該項目的目錄結(jié)構(gòu)和文件。“Subversion”頁面顯示三個子目錄:branches/、tags/、trunk/和一個自述文件。自述文件可以使您對Subversion存儲庫有一個整體了解。您可以點(diǎn)擊“訪問選項”,查看Subversion客戶端安裝說明。您的本地計算機(jī)上必須安裝有Subversion客戶端。
獲取項目的本地工作副本:svncheckout
若要獲取***源文件的“工作副本”,您必須首先簽出這些源文件,這一過程會將文件從存儲庫復(fù)制到您的系統(tǒng)中。在您的外殼程序或終端客戶端,請鍵入:svncheckouthttps://(項目名稱).(域)/svn/(項目名稱)/(DIR)(項目名稱)--username[在此處輸入用戶名],當(dāng)系統(tǒng)提示您時輸入您的用戶密碼。此密碼應(yīng)與您在本站點(diǎn)中的用戶帳號的密碼相同。不指定目錄將簽出整個項目源代碼。您可能希望簽出“trunk/”目錄,因為此目錄具有工作“www/”文件夾。
Subversion命令轉(zhuǎn)換:--revision(-r)REV,--quiet(-q),--non-recursive(-N),--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dirDIR
請參見基本工作周期、初始簽出、工作副本。注意:如果站點(diǎn)未啟用SSL(安全套接字層),則在執(zhí)行Subversion操作時,請使用http而不是https。例如,若要從項目的存儲庫中簽出***的源代碼,請使用以下命令:svncheckouthttps://(項目名稱).(域)/svn/(項目名稱)/(DIR)(項目名稱)--username[在此處輸入用戶名]。
處理Subversion存儲庫中的文件
從項目存儲庫中簽出本地副本后,您可以在本地計算機(jī)上編輯現(xiàn)有文件、創(chuàng)建新文件和目錄、以及刪除文件。在您將所做的任何更改提交回Subversion存儲庫之前,這些更改只對項目文件的本地副本起作用。
將工作副本中的文件/目錄添加到存儲庫中:svnadd
在您***次在工作目錄中創(chuàng)建并編輯新文件后,可以將此文件添加到存儲庫中,或添加一個目錄,目錄中有無內(nèi)容均可。svnaddFILENAME/DIR。
這樣就會在您的工作副本中添加文件/目錄,并安排它們以添加到存儲庫中。您下次提交時,會上載這些文件/目錄,并將它們添加到存儲庫中。如果您了添加內(nèi)容,但在提交前又改變了主意,則可以使用svnrevert取消添加內(nèi)容的安排。
Subversion命令轉(zhuǎn)換:--targetsFILENAME,--non-recursive(-N),--quiet(-q),--config-dirarg,--auto-props,--no-auto-props請參見添加文件/目錄示例。查看帶有修訂和作者信息的特定文件的內(nèi)容:svnblame若要在線查看指定文件的作者和修訂信息,請鍵入:svnblameFILENAME,每行文本的開始處都以上次更改該行的作者(用戶名)和修訂版本號作為批注。
轉(zhuǎn)換:--revision(-r)REV,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dirDIR查看特定文件的內(nèi)容:svncat,有時,與存儲庫相比較,您的工作副本可能已過時;或者您可能已修改了本地工作副本。在這些情況下,在提交更改或決定編輯您的工作副本之前,您會希望查看指定文件的內(nèi)容差異。運(yùn)行svncatFILENAME將自動從存儲庫中取出HEAD修訂版本。這條子命令主要用于檢索具有較舊修訂版本號的文件,并將其顯示在屏幕上。通過在此站點(diǎn)上瀏覽項目源代碼,也可以執(zhí)行相同的操作。
轉(zhuǎn)換:--revision(-r)REV,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dirDIR
清理工作副本:svncleanup,有時可能會出現(xiàn)“工作副本已鎖定”錯誤。若要刪除鎖定,并遞歸清理工作副本,請使用svnupdate。
轉(zhuǎn)換:--diff3-cmdCMD,--config-dirDIR請參見svncleanup。復(fù)制工作副本或存儲庫中的文件或目錄:svncopy在項目中,您可能需要用到過去的舊文檔。例如,您可能想要使用一個已存在的HTML文件,使用其代碼作為參考以在創(chuàng)建新內(nèi)容時保持產(chǎn)品外觀和感覺。創(chuàng)建文件時,您無需從頭開始,只需使用svncopy復(fù)制此文件,然后將其另存為其它名稱并更改其內(nèi)容。您可以從存儲庫將文件復(fù)制為本地工作副本,也可以將本地工作副本復(fù)制回存儲庫文件。您還可以在本地工作副本內(nèi)部復(fù)制文件。Subversion不支持在存儲庫之間進(jìn)行復(fù)制。可使用svncopySRCDST完成此操作。
轉(zhuǎn)換:--message(-m)TEXT,--file(-F)FILE,--revision(-r)REV,--quiet(-q),--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--force-log,--editor-cmdEDITOR,--encodingENC,--config-dirDIR
請參見svncopy。
本文介紹Subversion命令沒有完畢,請繼續(xù)關(guān)注下節(jié)介紹。
【編輯推薦】
- 學(xué)習(xí)筆記:剖析Collabnet Subversion集成
- 深入剖析:Subversion1.5.5和Apache2.2.9在Windows下的***結(jié)合
- Subversion和TortoiseSVN如何在Windows下進(jìn)行構(gòu)建SVN版本控制
- 揭露MyEclipse Subversion環(huán)境建立的內(nèi)幕
- 經(jīng)驗總結(jié):如何讓Visual Studio 2008支持Subversion