[git與github]__git與github簡單瞭解

  • 前言
    關於版本控制,版本控制是一種記錄一個或若干文件內容變化,以便未來查閱特定版本修訂狀況的系統。
    咱們經過版本控制系統能夠解決的問題:能夠很是方便的查看咱們的源碼文件的歷代更新版本.或將咱們的項目源代碼文件回溯到以前的某一版本.

關於版本控制的發展歷史能夠參看:
pro git__起步html


  • git簡介git

    git是一個分佈式版本控制軟件,最初由最初由林納斯·託瓦茲創做,於2005年以GPL發佈。最初目的是爲更好地管理Linux內核開發而設計。github

git能夠把檔案的狀態做爲更新歷史記錄保存起來。所以能夠把編輯過的檔案復原到之前的狀態,也能夠顯示編輯過內容的差別。數據庫

git使用數據庫管理歷史記錄,在數據庫的管理下除了儲存修改歷史記錄外,還能夠追蹤到內容的狀態和版本.你能夠將本身的項目放在本地數據庫中或遠端數據庫中公開分享本身的源碼,能夠相互之間交流,也可使得相互之間能夠共同修改和維護項目,這也是開源的意義之一.服務器

  • 分佈式版本控制系統的特色網絡

    在這類系統中,像 Git,Mercurial,Bazaar 以及 Darcs 等,客戶端並不僅提取最新版本的文件快照,而是把代碼倉庫完整地鏡像下來。這麼一來,任何一處協同工做用的服務器發生故障,過後均可以用任何一個鏡像出來的本地倉庫恢復。由於每一次的提取操做,實際上都是一次對代碼倉庫的完整備份.分佈式

許多這類系統均可以指定和若干不一樣的遠端代碼倉庫進行交互。籍此,你就能夠在同一個項目中,分別和不一樣工做小組的人相互協做。你能夠根據須要設定不一樣的協做流程,好比層次模型式的工做流,而這在之前的集中式系統中是沒法實現的。網站

分佈式版本控制系統


  • github簡介
    GitHub是經過Git進行[版本控制]的軟件源代碼託管服務,由GitHub公司(曾稱Logical Awesome)的開發者Chris Wanstrath、PJ Hyett和Tom Preston-Werner使用[Ruby on Rails]編寫而成。

GitHub同時提供付費帳戶和免費帳戶。這兩種帳戶均可以建立公開或私有的代碼倉庫,但付費用戶支持更多功能。根據在2009年的Git用戶調查,GitHub是最流行的Git訪問站點。除了容許我的和組織建立和訪問保管中的代碼之外,它也提供了一些方便社會化共同軟件開發的功能,即通常人口中的社羣功能,包括容許用戶追蹤其餘用戶、組織、軟件庫的動態,對軟件代碼的改動和bug提出評論等。GitHub也提供了圖表功能,用於概觀顯示開發者們怎樣在代碼庫上工做以及軟件的開發活躍程度。操作系統

  • GitHub裏面的項目能夠經過標準的Git命令進行訪問和操做。同時,全部的Git命令均可以用到GitHub項目上面。GitHub開發了針對Microsoft Windows和macOS操做系統的桌面客戶端。此外,也可使用第三方插件來實現Git功能。插件

  • 網站提供了一系列[社交網絡]具備的功能,例如贊(star)、關注(follow)、評論。用戶能夠經過復刻(fork)他人項目的形式參與開發,並可經過協做示意圖來查看有多少開發者參與了開發並追蹤最新的復刻版本。此外網站還有Wiki(經過一個名爲 gollum 的軟件實現)等功能。

  • GitHub同時容許註冊用戶和非註冊用戶在網頁中瀏覽項目,也能夠以ZIP格式打包下載。可是用戶必須註冊一個帳號而後才能進行討論、建立並編輯項目、參與他人的項目和代碼審查。(這項功能使得衆多用戶能夠基於github部署本身的我的博客)

  • GitHub支持建立不限數量的公開倉庫,已付費用戶能夠建立私有倉庫。2019年1月7日,GitHub宣佈免費用戶也能夠建立私有倉庫,私有倉庫數量不限但每一個倉庫最多指定三個合做者

  • 主要功能
    GitHub一般用於軟件開發。GitHub還支持如下格式和功能:
  • 文檔:包括自動生成的、採用類Markdown文件。
  • 問題追蹤系統(同時可用於功能需求)
  • Wiki
  • GitHub Pages支持用戶經過軟件倉庫建立靜態網站或靜態博客(經過一個名爲Jekyll的軟件實現)。
  • 任務列表
  • 甘特圖
  • 可視化的地理位置分析
  • 預覽3D渲染文件預覽功能經過WebGL實現。
  • 預覽Adobe Photoshop的PSD文件,甚至能夠比較同一文件的不一樣版本。


參考:
wiki/GitHub
wiki/Git
pro git


更新時間: 2019-4-10 23:45