成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

學習筆記 SVN簡易使用手冊詳解

開發 項目管理
本文向大家介紹一下SVN簡易使用手冊,SVN現在用處越來越廣,所以大家有必要知道SVN是什么以及如何使用,本文就給大家講解一下。

本節接著上節簡單介紹一下SVN簡易使用手冊,在學習SVN的過程中這些是必須掌握的內容,在這里和大家分享一下,希望通過本節的學習大家能夠掌握SVN的使用,讓我們一起來學習SVN簡易使用手冊吧。

另一種檢查修改的方式是svndiff命令,你可以通過不帶參數的svndiff精確的找出你所做的修改,這會輸出統一區別格式:[3]
$svndiffIndex:bar.c===================================================================---bar.c(revision3)+++bar.c(workingcopy)@@-1,7+1,12@@+#include<sys/types.h>+#include<sys/stat.h>+#include<unistd.h>++#include<stdio.h>intmain(void){-printf("Sixty-fourslicesofAmericanCheese...\n");+printf("Sixty-fiveslicesofAmericanCheese...\n");return0;}Index:README===================================================================---README(revision3)+++README(workingcopy)@@-193,3+193,4@@+Notetoself:pickuplaundry.Index:stuff/fish.c===================================================================---stuff/fish.c(revision1)+++stuff/fish.c(workingcopy)-Welcometothefileknownas'fish'.-Informationonfishwillbeheresoon.Index:stuff/things/bloo.h===================================================================---stuff/things/bloo.h(revision8)+++stuff/things/bloo.h(workingcopy)+Hereisanewfiletodescribe+thingsaboutbloo.
svndiff命令通過比較你的文件和.svn的“原始”文件來輸出信息,預定要增加的文件會顯示所有增加的文本,要刪除的文件會顯示所有要刪除的文本。
輸出的格式為統一區別格式(unifieddiffformat),刪除的行前面加一個-,添加的行前面有一個+,svndiff命令也打印文件名和打補丁需要的信息,所以你可以通過重定向一個區別文件來生成“補丁”:$svndiff>patchfile
 

舉個例子,你可以把補丁文件發送郵件到其他開發者,在提交之前審核和測試。svnrevert假設你通過上面的diff輸出發現你不小心用編輯器在README中輸入了一些字符。
這是使用svnrevert的好機會。
$svnrevertREADMEReverted'README'
Subversion把文件恢復到未修改的狀態,叫做.svn目錄的“原始”拷貝,應該知道svnrevert可以恢復任何預定要做的操作,舉個例子,你不再想添加一個文件:
$svnstatusfoo?foo$svnaddfooAfoo$svnrevertfooReverted'foo'$svnstatusfoo?foo
注意:
SVN簡易使用手冊中有些需要注意的問題。svnrevertITEM的效果與刪除ITEM然后執行svnupdate-rBASEITEM完全一樣,但是,如果你使用svnrevert它不必通知版本庫就可以恢復文件。
或許你不小心刪除了一個文件:$svnstatusREADMEREADME$svndeleteREADMEDREADME$svnrevertREADMEReverted'README'$svnstatusREADMEREADME
看!沒有網絡!
這三個命令(svnstatus、svndiff和svnrevert)都可以在沒有網絡的情況下工作,這讓你在沒有網絡連接時的管理修改過程更加簡單,像在飛機上旅行,乘坐火車往返或是在海灘上奮力工作時。
Subversion通過在.svn管理區域使用原始的版本緩存來做到這一點,這使得恢復本地版本而不必訪問網絡,這個緩存(叫做“text-base”)也允許Subversion可以根據原始版本生成一個壓縮的增量(“區別”)提交—即使你有個非??斓木W絡,有這樣一個緩存有極大的好處,非常的快,只向服務器提交修改的部分,這一點乍一看好像并不重要,但當你要提交一個400M大小的文件的修改時,你就會明白!
解決沖突(合并別人的修改)
我們學習SVN簡易使用手冊時可以使用svnstatus-u來預測沖突,當你運行svnupdate一些有趣的事情發生了:
$svnupdateUINSTALLGREADMECbar.cUpdatedtorevision46.
U和G沒必要關心,文件干凈的接受了版本庫的變化,文件標示為U表明本地沒有修改,文件已經根據版本庫更新。G標示合并,標示本地已經修改過,與版本庫沒有重迭的地方,已經合并。但是C表示沖突,說明服務器上的改動同你的改動沖突了,你需要自己手工去解決。
當沖突發生了,有三件事可以幫助你注意到這種情況和解決問題:
Subversion打印C標記,并且標記這個文件已沖突。
如果Subversion認為這個文件是可合并的,它會置入沖突標記—特殊的橫線分開沖突的“兩面”—在文件里可視化的描述重疊的部分(Subversion使用svn:mime-type屬性來決定一個文件是否可以使用上下文的,以行為基礎合并,更多信息可以看“svn:mime-type”一節)。
對于每一個沖突的文件,Subversion放置三個額外的未版本化文件到你的工作拷貝:filename.mine
你更新前的文件,沒有沖突標志,只是你最新更改的內容。(如果Subversion認為這個文件不可以合并,.mine文件不會創建,因為它和工作文件相同。)
filename.rOLDREV
這是你的做更新操作以前的BASE版本文件,就是你在上次更新之后未作更改的版本。
filename.rNEWREV
這是你的Subversion客戶端從服務器剛剛收到的版本,這個文件對應版本庫的HEAD版本。
這里OLDREV是你的.svn目錄中的修訂版本號,NEWREV是版本庫中HEAD的版本號。
 

舉一個例子,Sally修改了sandwich.txt,Harry剛剛改變了他的本地拷貝中的這個文件并且提交到服務器,Sally在提交之前更新它的工作拷貝得到了沖突:
$svnupdateCsandwich.txtUpdatedtorevision2.$ls-1sandwich.txtsandwich.txt.minesandwich.txt.r1sandwich.txt.r2
在這種情況下,Subversion不會允許你提交sandwich.txt,直到你的三個臨時文件被刪掉。
$svncommit--message"Addafewmorethings"svn:Commitfailed(detailsfollow):svn:Abortingcommit:'/home/sally/svn-work/sandwich.txt'remainsinconflict
如果你遇到沖突,三件事你可以選擇:
“手動”合并沖突文本(檢查和修改文件中的沖突標志)。
用某一個臨時文件覆蓋你的工作文件。運行svnrevert<filename>來放棄所有的修改。一旦你解決了沖突,你需要通過命令svnresolved讓Subversion知道,這樣就會刪除三個臨時文件,Subversion就不會認為這個文件是在沖突狀態了。[4]$svnresolvedsandwich.txtResolvedconflictedstateof'sandwich.txt'。請關注有關SVN簡易使用手冊下節介紹。

【編輯推薦】

  1. SVN簡易使用手冊專家推薦
  2. SVN簡易使用手冊實例詳解
  3. ApacheSVN服務器安裝指導手冊
  4. 程序集版本中使用SVN版本號自動生成方法詳解
  5. SVN服務器安裝指導手冊
責任編輯:佚名
相關推薦

2010-05-26 13:17:55

SVN簡易使用手冊

2010-05-26 12:59:48

SVN簡易使用手冊

2010-05-27 13:35:43

SVN簡易使用手冊

2010-05-26 13:32:16

SVN簡易使用手冊

2010-05-26 14:01:47

SVN安裝使用手冊

2010-05-21 12:37:49

SVN使用教程

2010-05-26 12:35:11

2010-05-20 19:12:37

2010-05-26 13:51:40

SVN安裝使用手冊

2010-05-26 12:45:49

SVN使用手冊

2010-06-01 13:19:04

2010-06-13 17:07:10

Cacti使用手冊

2010-05-17 14:53:16

Subversion使

2009-10-26 11:11:33

linux Emacs

2010-06-01 13:28:54

SVN客戶端用戶使用手

2009-12-02 18:03:00

PHP cURL

2011-08-09 13:22:31

iPhoneSqlite數據庫

2010-08-31 08:59:06

marginHTML

2010-05-19 10:57:34

Subversion配

2010-06-07 12:38:37

Cacti使用手冊
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 全部免费毛片在线播放网站 | 久久久久久中文字幕 | 国产精品久久久久久久久久久久久 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 91精品国产综合久久精品图片 | 每日在线更新av | 日韩毛片在线观看 | 在线视频中文字幕 | 精品乱码一区二区 | 欧美一区中文字幕 | 欧美在线资源 | 国产一区二区三区 | 在线电影日韩 | 欧美精品一区二区三区在线播放 | 欧美一级久久精品 | 日韩精品一区二区三区视频播放 | 欧美伊人久久久久久久久影院 | 成人国产在线观看 | 亚洲精品乱码久久久久久按摩观 | 日韩精品在线网站 | 国产日韩欧美二区 | 日韩第一夜 | 免费一区在线 | 久久久久国产精品午夜一区 | 色婷婷精品国产一区二区三区 | 99精品久久久久久中文字幕 | 99久久精品国产一区二区三区 | 中文字幕在线观看第一页 | 日韩av在线中文字幕 | 国产成人免费视频网站高清观看视频 | 久久aⅴ乱码一区二区三区 91综合网 | a级片在线 | 玖玖玖在线观看 | 狠狠躁天天躁夜夜躁婷婷老牛影视 | 国产一区二区三区在线看 | 亚洲欧美中文日韩在线v日本 | 99在线观看 | 在线成人一区 | 久久er精品 | 九九激情视频 | 国产精品不卡视频 |