你可以在LOCK Message中輸入一些文字,或者關(guān)于加鎖的信息。單擊OK,你就取得了對(duì)這個(gè)文件的編輯權(quán)。這時(shí)該文件的圖標(biāo)也會(huì)變?yōu)椋?/div>
這表示你對(duì)文件取得了控制權(quán)。如果你對(duì)文件進(jìn)行了修改,圖標(biāo)會(huì)變?yōu)椋?/div>
當(dāng)你完成對(duì)該項(xiàng)目文件的修改以后,首先需要對(duì)該文件進(jìn)行解鎖,操作和解鎖類似,點(diǎn)擊Unlock以后,會(huì)出現(xiàn)如下圖的對(duì)話框:
單擊OK,你就對(duì)該文件解鎖了,但是還有一點(diǎn)要注意,如果你對(duì)文件進(jìn)行了修改,解鎖完成以后右鍵點(diǎn)擊該文件,點(diǎn)擊提交。你修改的文件就被提交到版本庫(kù)中了。這里還有一點(diǎn),就是如果你忘記解鎖了,直接點(diǎn)擊提交,解鎖的操作會(huì)被默認(rèn)也進(jìn)行了。
如果該項(xiàng)目文件有多個(gè)人對(duì)他進(jìn)行了修改,那在每次要對(duì)該文件進(jìn)行加鎖的時(shí)候要先Update,獲取最新的版本,如下圖:
如果你提交前不想將你所修改的提交或者想恢復(fù)到加鎖時(shí)候的文件狀態(tài),可以右鍵單擊該文件,點(diǎn)擊Ankh,選擇Revert選項(xiàng),就可以撤銷你的修改了。
2.2.2添加項(xiàng)目文件到版本庫(kù)
在項(xiàng)目開發(fā)的過程中會(huì)添加新的項(xiàng)目文件,這個(gè)時(shí)候要將文件提交到版本庫(kù)中去,這樣別的開發(fā)人員也可以看到新添加的文件。首先在VS.NET中添加一個(gè)新的文件夾,里面新建一個(gè)頁(yè)面,這個(gè)時(shí)候文件只在本地PC存在,圖標(biāo)顯示為一個(gè)加號(hào),顯示如圖:
然后右鍵單擊該頁(yè)面,點(diǎn)擊commit,如圖:
點(diǎn)擊commit提交。這個(gè)時(shí)候文件就被提交到版本庫(kù)中去了,但是該文件還不是只讀屬性,因此要到文件夾下去設(shè)置只讀屬性。
在對(duì)應(yīng)的文件夾下,右鍵單擊新添加的文件,點(diǎn)擊TortoiseSVN,然后選擇Properties,彈出對(duì)話框,如圖:
接著點(diǎn)擊ADD,出現(xiàn)的對(duì)話框如下圖,在Property name中填入svn:needs-lock,Property value中填入*,然后點(diǎn)擊OK。
當(dāng)這一步操作完成以后,再次提交該文件,將修改提交到版本庫(kù)中去。這個(gè)時(shí)候圖標(biāo)由原來的綠色或者是藍(lán)色變?yōu)橄聢D的灰色。
2.2.3日志查看
如果要查看Advisor.aspx.vb文件的日志,有哪幾個(gè)人進(jìn)行了修改,右鍵單擊該文件,選擇Ankh選項(xiàng)的里L(fēng)OG選項(xiàng),會(huì)出現(xiàn)下圖:
圖中Revision start表示查看日志開始的版本, Revision end表示最新的版本,你也可以選擇其他的。點(diǎn)擊OK后就可以查看日志了。日志記載的比較詳細(xì),文件修改人,修改時(shí)間,修改的文件路徑都可以查看到。
剛才是在VS.NTE環(huán)境中查看日志,如果你想直接在受版本控制的文件夾中查看日志也是可以的,在文件夾中右鍵點(diǎn)擊要查看的文件,單擊TortoiseSVN,點(diǎn)擊Show Log選項(xiàng)。
就可以查看日志,如圖:
2.2.4比較文件
SVN提供了比較文件不同的功能,可以方便的查看文件進(jìn)行了那些修改。接著上一小節(jié),點(diǎn)擊日志里的任一版本,點(diǎn)擊右鍵,選擇compare with working copy或者compare with選項(xiàng),經(jīng)過片刻,就會(huì)出現(xiàn)你選擇的版本的文件的,如圖:
你也可以在VS.NET開發(fā)環(huán)境中對(duì)該文件點(diǎn)擊Diff選項(xiàng),比較不同,如圖:
紅色的是最新的版本號(hào),藍(lán)色的加號(hào)表示新添加的內(nèi)容。具體的含義大家可以查看官方文檔。
3 附錄
3.1 SVN各種圖標(biāo)的含義
一個(gè)新檢出的工作復(fù)本使用綠色的對(duì)勾做重載。表示Subversion狀態(tài)正常.
在你開始編輯一個(gè)文件后,狀態(tài)就變成了已修改,而圖標(biāo)重載變成了紅色感嘆號(hào)。通過這種方式,你可以很容易地看出哪些文件從你上次更新工作復(fù)本后被修改過,需要被提交。
如果在提交的過程中出現(xiàn)了沖突圖標(biāo)變成黃色感嘆號(hào)。
如果你給一個(gè)文件設(shè)置了svn:needs-lock屬性,Subversion會(huì)讓此文件只讀,直到你獲得文件鎖。只讀文件具有這個(gè)重載圖標(biāo)來表示你必須在編輯之前先得到一個(gè)鎖。
如果你擁有了一個(gè)文件的鎖,并且Subversion狀態(tài)是正常,這個(gè)重載圖標(biāo)就提醒你如果不使用該文件的話應(yīng)該釋放鎖,允許別人提交對(duì)該文件的修改。
這個(gè)圖標(biāo)表示當(dāng)前文件夾下的某些文件或文件夾已經(jīng)被計(jì)劃從版本控制中刪除,或是該文件夾下某個(gè)受控的文件丟失了。
加號(hào)告訴你有一個(gè)文件或是目錄已經(jīng)被計(jì)劃加入版本控制。
與TortoiseCVS (一個(gè)集成的CVS shell)不同,對(duì)于未受控的文件沒有圖標(biāo)重載。這么做是因?yàn)閳D標(biāo)重載的數(shù)量受到系統(tǒng)的限制,應(yīng)該要節(jié)約使用。
事實(shí)上,你會(huì)發(fā)現(xiàn)并不是所有的圖標(biāo)被使用在你的系統(tǒng)上。這是由于Windows限制圖標(biāo)重載不能超過15個(gè)。Windows自己用了4個(gè),剩下11個(gè)可被別的應(yīng)用程序使用。如果你同時(shí)使用了TortoiseCVS,就不有足夠的空位了,所以TortoiseSVN希望成為一個(gè)“良好市民(TM)”,限制自身的使用,為別的應(yīng)用留下機(jī)會(huì)。
l 正常, 已修改和沖突總是被載入,并可見。
l 已刪除只要有可能的就載入,但如果沒有足夠的空位,就使用已修改來代替。
l 只讀只要有可能就載入,但如果沒有足夠的空位就使用正常來代替。
l 已鎖定只在少于13個(gè)重載已經(jīng)載入的情況下才加載,如果不滿足這個(gè)條件就使用正常來代替。
l 已增加只在少于14個(gè)重載已經(jīng)載入的情況下才加載,如果不滿足這個(gè)條件就使用已修改來代替
3.2 CVS項(xiàng)目轉(zhuǎn)換到SVN
由于我們之前的項(xiàng)目是在CVS上進(jìn)行開發(fā)的,所以要將目前的受CVS控制的項(xiàng)目全部轉(zhuǎn)換到SVN當(dāng)中。轉(zhuǎn)換如下:
1 例如我要轉(zhuǎn)換eservice_com這個(gè)項(xiàng)目,首先新建一個(gè)文件夾,然后在該文件夾下面新建一個(gè)eservice_com文件,并且在VS.NT中新建一個(gè)名為eservice_com的解決方案。
2 然后復(fù)制一份受CVS控制的eservice_com項(xiàng)目文件,拷貝到新建的eservice_com解決方案中去。然后搜索該文件下面的所有目錄,將關(guān)于CVS的文件全部刪除。搜索設(shè)置如圖:
3用VS.NET打開新建的eservice_com解決方案,點(diǎn)擊Project,選擇Show ALL選項(xiàng),如圖:
這是在Solution Explorer中會(huì)出現(xiàn)剛才拷貝到這里的eservice_com項(xiàng)目的文件,不過是灰色,這是在Solution Explorer中點(diǎn)擊右鍵,選擇Include in Project,項(xiàng)目就會(huì)被添加到新建的解決方案中來。如果你前面沒有將CVS的信息全部刪除的話會(huì)出現(xiàn)錯(cuò)誤提示,提示你已經(jīng)有版本控制軟件控制該文件,然后就會(huì)出錯(cuò)。如圖:
4 等項(xiàng)目全部include到新建的項(xiàng)目以后,這個(gè)時(shí)候項(xiàng)目還沒有受到SVN控制,因此要將該項(xiàng)目上傳到版本庫(kù)中去。單擊VS.NET的File菜單,選擇add solution to subversion選項(xiàng),然后按照提示輸入版本庫(kù)的URL地址,確定后提交。如圖:
如果在提交的過程中要求輸入賬號(hào)和密碼,這時(shí)候輸入域賬號(hào)和密碼就可以了。一切順利的話項(xiàng)目就會(huì)被上傳到版本庫(kù)中。如圖:
5上傳以后項(xiàng)目還不是只讀屬性,右鍵單擊該項(xiàng)目的文件夾,給項(xiàng)目文件添加只讀屬性,如圖:
5添加完只讀屬性以后在將項(xiàng)目文件向版本庫(kù)提交一次,如圖:
6 提交成功以后,文件夾的圖標(biāo)會(huì)由原來的綠色的勾變?yōu)榛疑?,表示文件是只讀的。
33參考文檔