<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    少年阿賓

    那些青春的歲月

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

    如果你在讀這篇文章,說明你跟大多數開發者一樣對GIT感興趣,如果你還沒有機會來試一試GIT,我想現在你就要了解它了。

    GIT不僅僅是個版本控制系統,它也是個內容管理系統(CMS),工作管理系統等。如果你是一個具有使用SVN背景的人,你需要做一定的思想轉換,來適應GIT提供的一些概念和特征。所以,這篇文章的主要目的就是通過介紹GIT能做什么、它和SVN在深層次上究竟有什么不同來幫助你認識它。

    那好,這就開始吧…

    1.GIT是分布式的,SVN不是:

    這是GIT和其它非分布式的版本控制系統,例如SVN,CVS等,最核心的區別。如果你能理解這個概念,那么你就已經上手一半了。需要做一點聲明,GIT并不是目前第一個或唯一的分布式版本控制系統。還有一些系統,例如BitkeeperMercurial等,也是運行在分布式模式上的。但GIT在這方面做的更好,而且有更多強大的功能特征。

    GIT跟SVN一樣有自己的集中式版本庫或服務器。但,GIT更傾向于被使用于分布式模式,也就是每個開發人員從中心版本庫/服務器上chect out代碼后會在自己的機器上克隆一個自己的版本庫。可以這樣說,如果你被困在一個不能連接網絡的地方時,就像在飛機上,地下室,電梯里等,你仍然能夠提 交文件,查看歷史版本記錄,創建項目分支,等。對一些人來說,這好像沒多大用處,但當你突然遇到沒有網絡的環境時,這個將解決你的大麻煩。

    同樣,這種分布式的操作模式對于開源軟件社區的開發來說也是個巨大的恩賜,你不必再像以前那樣做出補丁包,通過email方式發送出去,你只需要創建一個分支,向項目團隊發送一個推請求。這能讓你的代碼保持最新,而且不會在傳輸過程中丟失。GitHub.com就是一個這樣的優秀案例。

    有些謠言傳出來說subversion將來的版本也會基于分布式模式。但至少目前還看不出來。

    2.GIT把內容按元數據方式存儲,而SVN是按文件:

    所有的資源控制系統都是把文件的元信息隱藏在一個類似.svn,.cvs等的文件夾里。如果你把.git目錄的 體積大小跟.svn比較,你會發現它們差距很大。因為,.git目錄是處于你的機器上的一個克隆版的版本庫,它擁有中心版本庫上所有的東西,例如標簽,分 支,版本記錄等。

    3.GIT分支和SVN的分支不同:

    分支在SVN中一點不特別,就是版本庫中的另外的一個目錄。如果你想知道是否合并了一個分支,你需要手工運行像這樣的命令svn propget svn:mergeinfo,來確認代碼是否被合并。感謝Ben同學指出這個特征。所以,經常會發生有些分支被遺漏的情況。

    然而,處理GIT的分支卻是相當的簡單和有趣。你可以從同一個工作目錄下快速的在幾個分支間切換。你很容易發現未被合并的分支,你能簡單而快捷的合并這些文件。

    4.GIT沒有一個全局的版本號,而SVN有:

    目前為止這是跟SVN相比GIT缺少的最大的一個特征。你也知道,SVN的版本號實際是任何一個相應時間的源代 碼快照。我認為它是從CVS進化到SVN的最大的一個突破。因為GIT和SVN從概念上就不同,我不知道GIT里是什么特征與之對應。如果你有任何的線 索,請在評論里奉獻出來與大家共享。

    更新:有些讀者指出,我們可以使用GIT的SHA-1來唯一的標識一個代碼快照。這個并不能完全的代替SVN里容易閱讀的數字版本號。但,用途應該是相同的。

    5.GIT的內容完整性要優于SVN:

    GIT的內容存儲使用的是SHA-1哈希算法。這能確保代碼內容的完整性,確保在遇到磁盤故障和網絡問題時降低對版本庫的破壞。這里有一個很好的關于GIT內容完整性的討論 –http://stackoverflow.com/questions/964331/git-file-integrity

    GIT和SVN之間只有這五處不同嗎?當然不是。我想這5個只是“最基本的”“最吸引人”的,我只想到這5點。如果你發現有比這5點更有趣的,請共享出來,歡迎。




    posted on 2015-10-11 22:41 abin 閱讀(603) 評論(0)  編輯  收藏 所屬分類: git

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲精品综合久久| 亚洲国产成人乱码精品女人久久久不卡| 国产亚洲精品无码成人| 老外毛片免费视频播放| 免费看香港一级毛片| 亚洲欧洲无码一区二区三区| 女人18一级毛片免费观看| 国产精品亚洲一区二区麻豆| 国产无遮挡又黄又爽免费视频| 亚洲AV无码专区国产乱码不卡| 国产免费观看a大片的网站| 美国免费高清一级毛片| 国产精品亚洲综合一区| 免费av一区二区三区| 亚洲经典在线观看| 成人性生免费视频| 美女隐私免费视频看| 337p日本欧洲亚洲大胆裸体艺术 | 在线观看免费亚洲| 男女交性无遮挡免费视频| 久久久青草青青国产亚洲免观 | 伊人久久综在合线亚洲91| 久久久久久AV无码免费网站下载| 亚洲一区二区在线免费观看| 亚洲精品免费网站| 综合偷自拍亚洲乱中文字幕| 日韩亚洲变态另类中文| 57pao国产成永久免费视频| 亚洲欧美国产日韩av野草社区| 免费一级成人毛片| 午夜精品免费在线观看| 亚洲小说图区综合在线| 亚洲伊人久久综合影院| 国产92成人精品视频免费| 国产亚洲精品仙踪林在线播放| 亚洲国产精品VA在线观看麻豆 | 亚洲一区二区三区高清在线观看| 免费v片在线观看品善网| 无码精品国产一区二区三区免费 | 一级毛片试看60分钟免费播放| 亚洲A∨无码一区二区三区|