【css-002】Git和SVN的區(qū)別筒主,如何在webstrom上配置SVN?

大家好鸟蟹,我是IT修真院北京分院web第29期學(xué)員吳昊杰乌妙,一枚正直純潔善良的web程序員。

【css-02】

【北京小課堂】svn和git有什么區(qū)別建钥? webstorm怎樣配置svn藤韵?


1.背景介紹

為什么要版本控制系統(tǒng)?

現(xiàn)在的軟件開(kāi)發(fā)工作經(jīng)常會(huì)需要修改文檔代碼锦针,一份文件可能會(huì)有很多的不同版本荠察,一旦丟了某個(gè)文件或者忘了放在哪里,一個(gè)個(gè)去找太麻煩奈搜。

于是就會(huì)想到如果有一個(gè)軟件悉盆,能夠幫我記住每次文件的改動(dòng),而且還可以和同事協(xié)同工作馋吗,就不用自己去管理一堆文件了焕盟,也不需要傳來(lái)傳去導(dǎo)致丟失。

所以版本控制系統(tǒng)就這樣誕生了。

它能夠具體的做記錄脚翘,具體的記錄每一步的改變灼卢,可以與小伙伴同步完成一個(gè)項(xiàng)目,這是版本控制系統(tǒng)最重要的作用来农。

2.知識(shí)剖析

SVN介紹

什么是SVN鞋真?Subversion的簡(jiǎn)稱(chēng),有一種說(shuō)法:SVN=版本控制+備份服務(wù)器。 它可以幫你記住每次上傳到這個(gè)服務(wù)器的檔案內(nèi)容沃于,并自動(dòng)賦予 每次變更 一個(gè)版本號(hào)涩咖。 我們用來(lái)存放(上傳過(guò)來(lái)的)檔案的地方叫做Repository。Repository的中文意思是倉(cāng)庫(kù)繁莹、貯藏室檩互、博物館萨脑。 我們有任何修改都可以上傳到Repository里扰柠。針對(duì)每次的上傳议纯,SVN server都會(huì)賦予一個(gè)新的版本锯茄。同時(shí),也會(huì)記錄每次上傳的時(shí)間肠牲。 我們以后可以從Repository中下載曾經(jīng)提交的檔案玲销。我們可以取到最新的版本懒闷,也可以取得之前任何一個(gè)版本村刨。如果忘記了版本告抄,還可以靠記憶獲取某個(gè)日期的版本撰茎。

Git介紹

Git是一種分布式的版本管理系統(tǒng)嵌牺,Linux的創(chuàng)造者Linus寫(xiě)的。git的作用就是對(duì)文件進(jìn)行版本管理龄糊,方便在不同版本進(jìn)行切換修改逆粹,類(lèi)似文件分不同時(shí)間備份讓后需要時(shí)找回其中一份代替,不過(guò)更方便使用炫惩。

至于Git的缺點(diǎn)就是命令太混亂僻弹,非常不直觀(guān),命令行幫助提示晦澀難懂他嚷。斷網(wǎng)的時(shí)候很可能不知道怎么使用Git

3.常見(jiàn)問(wèn)題

1.SVN和Git有什么區(qū)別蹋绽?

2.webstorm怎樣配置svn?

4.解決方案

SVN和Git有什么區(qū)別筋蓖?

1卸耘、SVN屬于集中化的版本控制系統(tǒng),Git是一個(gè)分布式版本控制系統(tǒng)。

2粘咖、Git把內(nèi)容按元數(shù)據(jù)方式存儲(chǔ)蚣抗,而SVN是按文件。

3瓮下、Git的分支卻是相當(dāng)?shù)暮?jiǎn)單和有趣,SVN較為復(fù)雜翰铡。

4钝域、Git的內(nèi)容完整性要優(yōu)于SVN。

5锭魔、Git沒(méi)有一個(gè)全局的版本號(hào)例证,而SVN有。

1.1迷捧、SVN屬于集中化的版本控制系統(tǒng)战虏,有個(gè)不太精確的比喻:SVN = 版本控制+ 備份服務(wù)器 SVN使用起來(lái)有點(diǎn)像是檔案?jìng)}庫(kù)的感覺(jué),支持并行讀寫(xiě)文件党涕,支持代碼的版本化管理烦感,功能包括取出、導(dǎo)入膛堤、更新手趣、分支、改名肥荔、還原绿渣、合并等。 Git是一個(gè)分布式版本控制系統(tǒng)燕耿,操作命令包括:clone中符,pull,push,branch ,merge ,rebase誉帅,Git擅長(zhǎng)的是程序代碼的版本化管理淀散。

1.2、GIT跟SVN一樣有自己的集中式版本庫(kù)或服務(wù)器蚜锨。但GIT更傾向于被使用于分布式模式档插,也就是每個(gè)開(kāi)發(fā)人員從中 心版本庫(kù)/服務(wù)器上check out代碼后會(huì)在自己的機(jī)器上克隆一個(gè)自己的版本庫(kù)⊙窃伲可以這樣說(shuō)郭膛,如果你被困在一個(gè)不能連接網(wǎng)絡(luò)的地方時(shí),你仍 然能夠提交文件氛悬,查看歷史版本記錄则剃,創(chuàng)建項(xiàng)目分支,對(duì)一些人來(lái)說(shuō)如捅,這好像沒(méi)多大用處棍现,但當(dāng)你突然遇到?jīng)]有 網(wǎng)絡(luò)的環(huán)境時(shí),這個(gè)將解決你的大麻煩伪朽。

2.1轴咱、SVN這類(lèi)版本控制系統(tǒng)則關(guān)心文件內(nèi)容的具體差異

每次記錄有哪些文件作了更新,以及都更新了哪些行的什么內(nèi)容,SVN 服務(wù)器上保存著唯一的一份歷史版本庫(kù)朴肺,所以是越詳細(xì)越好了窖剑,我們想要查看一下某個(gè)文件的與昨天的版本相比的更新變動(dòng)信息SVN的優(yōu)勢(shì)就顯示出來(lái)了

2.2、Git 關(guān)心文件數(shù)據(jù)的整體是否發(fā)生變化

Git 并不保存這些前后變化的差異數(shù)據(jù)戈稿。實(shí)際上西土,Git更像是把變化的文件作快照后,記錄在一個(gè)微型的文件系統(tǒng)中鞍盗。每次提交更新時(shí)需了,它會(huì)縱覽一遍所有文件的指紋信息并對(duì)文件作一快照,然后保存一個(gè)指向這次快照的索引般甲。為提高性能肋乍,若文件沒(méi)有變化,Git 不會(huì)再次保存敷存,而只對(duì)上次保存的快照作一鏈接墓造。

3.1、svn分支是一個(gè)完整的目錄锚烦,且這個(gè)目錄擁有完整的實(shí)際文件觅闽。如果工作成員想要開(kāi)啟新的分支,那將會(huì)影響“全世界”涮俄!每個(gè)人都會(huì)擁有和你一樣的分支蛉拙。如果你的分支是用來(lái)對(duì)系統(tǒng)模塊進(jìn)行安全檢查測(cè)試的,那將會(huì)像傳染病一樣彻亲,你改一個(gè)分支孕锄,還得讓其他人重新切分支重新下載,而且這些代碼很可能對(duì)穩(wěn)定版本還是具有破壞性的睹栖。

3.2硫惕、Git每個(gè)工作成員可以任意在自己的本地版本庫(kù)開(kāi)啟無(wú)限個(gè)分支。舉例:當(dāng)我想嘗試破壞自己的程序(安檢測(cè)試)野来,并且想保留這些被修改的文件供日后使用, 我可以開(kāi)一個(gè)分支踪旷,做我喜歡的事曼氛。完全不需擔(dān)心妨礙其他工作成員。只要我不合并及提交到主要版本庫(kù)令野,沒(méi)有一個(gè)工作成員會(huì)被影響舀患。等到我不需要這個(gè)分支時(shí), 我只要把它從我的本地版本庫(kù)刪除即可气破。無(wú)痛無(wú)癢聊浅。

4.Git 的內(nèi)容完整性要優(yōu)于SVN。因?yàn)镚it 在commit(存儲(chǔ)在本地)或者push(上傳到遠(yuǎn)程倉(cāng)庫(kù))之前,通過(guò)對(duì)文件的內(nèi)容或目錄的結(jié)構(gòu)計(jì)算出一個(gè) SHA-1哈希值低匙,作為指紋字符串進(jìn)行內(nèi)容的校驗(yàn)旷痕,并將此結(jié)果作為數(shù)據(jù)的唯一標(biāo)識(shí)和索引,在遠(yuǎn)處倉(cāng)庫(kù)接受到commit的文件之后顽冶,會(huì)再計(jì)算一遍哈希值然后跟傳遞過(guò)來(lái)的哈希值做比較欺抗,如果不一致,說(shuō)明文件在傳輸時(shí)變得不完整强重,或者磁盤(pán)損壞導(dǎo)致文件數(shù)據(jù)損壞绞呈。

5.SVN只能有一個(gè)指定中央版本庫(kù)。當(dāng)這個(gè)中央版本庫(kù)有問(wèn)題時(shí)间景,所有工作成員都一起癱瘓直到版本庫(kù)維修完畢或者新的版本庫(kù)設(shè)立完成佃声。而 Git可以有無(wú)限個(gè)版本庫(kù)√纫或者秉溉,更正確的說(shuō)法,每一個(gè)Git都是一個(gè)版本庫(kù)碗誉,區(qū)別是它們是否擁有活躍目錄召嘶。這能確保代碼內(nèi)容的完整性,確保在遇到磁盤(pán)故障和網(wǎng)絡(luò)問(wèn)題時(shí)降低對(duì)版本庫(kù)的破壞哮缺。

優(yōu)缺點(diǎn)比較

1.SVN優(yōu)缺點(diǎn)

優(yōu)點(diǎn): 1弄跌、 優(yōu)異的跨平臺(tái)支持。 2尝苇、 簡(jiǎn)單易用铛只。 3、 功能完善穩(wěn)定糠溜。 4淳玩、 適合開(kāi)發(fā)人數(shù)不多的項(xiàng)目開(kāi)發(fā)。

缺點(diǎn): 1非竿、 服務(wù)器壓力太大蜕着,數(shù)據(jù)庫(kù)容量暴增。 2红柱、 如果不能連接到服務(wù)器上承匣,基本上不可以工作,看上面第二步锤悄,如果服務(wù)器不能連接上韧骗,就不能提交,還原零聚,對(duì)比等等袍暴。 3些侍、 不適合開(kāi)源開(kāi)發(fā)(開(kāi)發(fā)人數(shù)非常非常多,但是Google app engine就是用svn的)政模。但是一般集中式管理的有非常明確的權(quán)限管理機(jī)制(例如分支訪(fǎng)問(wèn)限制)岗宣,可以實(shí)現(xiàn)分層管理,從而很好的解決開(kāi)發(fā)人數(shù)眾多的問(wèn)題览徒。

2.Git優(yōu)缺點(diǎn)

優(yōu)點(diǎn): 1狈定、適合分布式開(kāi)發(fā),強(qiáng)調(diào)個(gè)體习蓬。 2纽什、公共服務(wù)器壓力和數(shù)據(jù)量都不會(huì)太大。 3躲叼、速度快芦缰、靈活。 4枫慷、任意兩個(gè)開(kāi)發(fā)者之間可以很容易的解決沖突让蕾。 5、離線(xiàn)工作或听。

缺點(diǎn): 1探孝、高昂的學(xué)習(xí)成本。 2誉裆、糟糕的抽象邏輯顿颅。 3、可能把事情變?cè)?Git的自由度較高足丢,Git沒(méi)有保護(hù)機(jī)制粱腻。 4、拙略的跨平臺(tái)支持斩跌。

2.webstorm怎樣配置svn绍些?

下載安裝sliksvn

在webstorm上配置sliksvn

輸入svn插件安裝的位

如何checkout代碼

根據(jù)服務(wù)器情況選擇svn信息,添加好地址就可以導(dǎo)入項(xiàng)目的版本庫(kù)了。

SVN服務(wù)器地址:

如何提交代碼, 在文件上選擇右鍵在彈出來(lái)的提示框點(diǎn)擊commit耀鸦,就可以看自己更 改過(guò)的文件柬批。

5.拓展思考

SVN 和 Git 哪個(gè)更適用于項(xiàng)目管理?

Git適用于參與開(kāi)源項(xiàng)目的開(kāi)發(fā)者揭糕。他們由于水平高萝快,更在乎的是效率而不是易用性。SVN則不同著角,它適合普通的公司開(kāi)發(fā)團(tuán)隊(duì)。使用起來(lái)更加容易旋恼。

使用的場(chǎng)合不同吏口。Git適用于通過(guò)Internet奄容,有多個(gè)開(kāi)發(fā)角色的單個(gè)項(xiàng)目開(kāi)發(fā),SVN適合企業(yè)內(nèi)部由項(xiàng)目經(jīng)理統(tǒng)一協(xié)調(diào)的多個(gè)并行項(xiàng)目的開(kāi)發(fā)产徊。

Git適用于單純的軟件項(xiàng)目,SVN擅長(zhǎng)多項(xiàng)目管理昂勒。

6.參考文獻(xiàn)

參考一:廖雪峰Git教程

參考二:Git 和 SVN 之間的五個(gè)基本區(qū)別

參考三:使用webstorm上傳代碼到github

參考四:Svn與Git的區(qū)別

參考五:webstorm11 配置git步驟

參考六:什么是SVN

參考七:版本控制:集中式VS分布式

參考八:git是什么?

今天的分享就到這里啦舟铜,歡迎大家點(diǎn)贊戈盈、轉(zhuǎn)發(fā)、留言谆刨、拍磚~


----------------------------------------------------------------------------------------------------------------------------------

騰訊視頻

PPT鏈接

集中式
分布式
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末塘娶,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子痊夭,更是在濱河造成了極大的恐慌刁岸,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件她我,死亡現(xiàn)場(chǎng)離奇詭異虹曙,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)番舆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)酝碳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人恨狈,你說(shuō)我怎么就攤上這事疏哗。” “怎么了拴事?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵沃斤,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我刃宵,道長(zhǎng)衡瓶,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任牲证,我火速辦了婚禮哮针,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘坦袍。我一直安慰自己十厢,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布捂齐。 她就那樣靜靜地躺著蛮放,像睡著了一般。 火紅的嫁衣襯著肌膚如雪奠宜。 梳的紋絲不亂的頭發(fā)上包颁,一...
    開(kāi)封第一講書(shū)人閱讀 51,541評(píng)論 1 305
  • 那天瞻想,我揣著相機(jī)與錄音,去河邊找鬼娩嚼。 笑死蘑险,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的岳悟。 我是一名探鬼主播佃迄,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼贵少!你這毒婦竟也來(lái)了呵俏?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤春瞬,失蹤者是張志新(化名)和其女友劉穎柴信,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體宽气,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡随常,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了萄涯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绪氛。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖涝影,靈堂內(nèi)的尸體忽然破棺而出枣察,到底是詐尸還是另有隱情,我是刑警寧澤燃逻,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布序目,位于F島的核電站,受9級(jí)特大地震影響伯襟,放射性物質(zhì)發(fā)生泄漏猿涨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一姆怪、第九天 我趴在偏房一處隱蔽的房頂上張望叛赚。 院中可真熱鬧,春花似錦稽揭、人聲如沸俺附。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)事镣。三九已至,卻和暖如春揪胃,著一層夾襖步出監(jiān)牢的瞬間蛮浑,已是汗流浹背唠叛。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工只嚣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留沮稚,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓册舞,卻偏偏與公主長(zhǎng)得像蕴掏,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子调鲸,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 大家好藐石,我是IT修真院北京分院第23期的學(xué)員郭婷婷即供,一枚正直純潔善良的WEB前端程序員。 今天給大家分享一下于微,修真...
    茶紙團(tuán)閱讀 1,046評(píng)論 0 4
  • 能力越大,責(zé)任越大恋腕,能做的有價(jià)值的事情也越多抹锄!有能力是一件很重要是事情,那么好的品行其實(shí)也非常的重要荠藤。 這里指的好...
    楊穎__指數(shù)成長(zhǎng)閱讀 1,443評(píng)論 2 0
  • “兒子哈肖,什么時(shí)候把你那個(gè)媳婦帶回家給我們瞧瞧?”宋母一邊插著花吻育,一邊問(wèn)在邊上看報(bào)表的宋民宇。宋父坐在躺椅上牡彻,悠然的...
    阿九小叔閱讀 183評(píng)論 1 1
  • 年少時(shí)扫沼,盼望著長(zhǎng)大了,想象著長(zhǎng)大了就會(huì)有漂亮的裙子庄吼,美麗的高跟鞋缎除,還有自己賺錢(qián)自己花。等到長(zhǎng)大了总寻,卻發(fā)現(xiàn)器罐,世界不是...
    楊家有女閱讀 160評(píng)論 0 0
  • 1.參數(shù)形式有以下5種: new Date("month dd,yyyy hh:mm:ss"); ...
    默小柒閱讀 2,733評(píng)論 0 0