介紹Git&GitHub 版本控制

介紹Git&GitHub 版本控制

推薦(免費):git教程

文章目錄

  • 版本控制
    • 版本控制工具的功能
  • Git簡介
    • Git的優勢
    • Git的下載與安裝
    • Git的本地結構
    • Git和代碼托管中心
    • 本地卡和遠程庫的交互方式

介紹Git&GitHub 版本控制

版本控制

個人開發需要不斷的改進和迭代,團隊內部需要協作,這樣的需求由版本控制工具來滿足。 需要明白的是版本控制只是一種思想,而版本控制工具是對這種思想的一種實現。

(1)集中式版本控制工具:CVS、SVN、VSS…
每一個開發人員是一個客戶端,文件和版本信息存儲在服務器上。缺點是容易出現單點故障:服務器一旦宕機,所有歷史數據都會丟失。

(2)分布式版本控制工具:Git、Mercurial、Bazaar、Darcs…
在本地就可以進行版本控制。有效的避免了單點故障。

版本控制工具的功能

版本控制工具有下面幾個功能:
(1)協同修改
多人并行不悖的修改服務器端的同一個文件。
(2)數據備份
不僅保存目錄和文件的當前狀態,還能保存每一個提交過的歷史狀態。
(3)版本管理
在保存每一個版本的文件信息時要做到不保存重復數據,以節約存儲時間,提高運行效率。這方面SVN采用的是增量式管理的方式,而Git采取了文件系統快照的方式。
(4)權限控制
對團隊中參與開發的人員進行權限控制;對團隊外開發者貢獻的代碼進行審核(Git獨有功能)。
(5)歷史記錄
查看修改人、修改時間、修改內容、日志信息;將本地文件恢復到某一個歷史狀態。
(6)分支管理
允許開發團隊在工作過程中多條生產線同時推進任務,進一步提高效率。

Git簡介

Linux在開發之初源代碼來自世界各地,由Linus自己手動匯總并合并代碼,這樣的工作很繁雜。

2002年BitMover公司出于人道主義授權Linux社區免費試用版本控制系統BitKeeper,但不允許破解。

2005年,開發Samba的Andrew試圖破解BitKeeper的協議,被BitMover公司發現后,要收回Linux社區的免費試用權;于是Linus自己用C語言開發了一個分布式版本控制系統—Git,一個月后Linux系統代碼由Git管理。

2008年,GitHub上線,jQuery、Ruby、PHP開源軟件都把自己的源代碼放在GitHub進行托管,如今GitHub上好的項目已經數以萬計。

Git的優勢

大部分操作在本地完成,不需要聯網。
完整性保證。(會對每一次提交的數據進行Hash操作)
盡可能添加數據而不是刪除或修改數據。
分支操作非常快捷流暢。
與 Linux 命令全面兼容。

Git的下載與安裝

可以去Git官網下載最新版本的git,僅在GitBash中使用就足夠了。

下面幾張圖需要注意,其他直接安裝默認值下載就可以了。
介紹Git&GitHub 版本控制

介紹Git&GitHub 版本控制

介紹Git&GitHub 版本控制

Git的本地結構

Git在本地存在三個區:

  • 工作區(寫代碼的地方)
  • 暫存區(臨時存儲)
  • 本地庫(存放歷史版本)

在工作區新建一個文件后,可以使用git add將其添加到暫存區,再使用git commit添加到本地庫。

Git和代碼托管中心

GitHub就是Git的一個代碼托管中心,其任務就是維護遠程庫。

  • 在局域網環境下,可以搭建GitLab服務器,作為代碼托管中心。
  • 在外網環境下,可以有GitHub和碼云作為代碼托管中心。

本地卡和遠程庫的交互方式

團隊內部協作:

介紹Git&GitHub 版本控制
跨團隊協作:
介紹Git&GitHub 版本控制

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享