海鹽市網(wǎng)站建設(shè)株洲專業(yè)seo優(yōu)化
Git ---- 概述
- 1. 何為版本控制
- 2. 為什么需要版本控制
- 3. 版本控制的工具
- 集中式版本控制工具
- 分布式版本控制工具
- 4. Git 簡史
- 5. Git 工作機制
- 6. Git 和代碼托管中心
Git 是一個免費的、開源的分布式版本控制系統(tǒng),可以快速高效地處理從小型到大型的各種項目。
Git 易于學(xué)習(xí),占地面積小,性能極快。 它具有廉價的本地庫,方便的暫存區(qū)域和多個工作流分支等特性。其性能優(yōu)于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。
1. 何為版本控制
版本控制是一種記錄文件內(nèi)容變化,以便將來查閱特定版本修訂情況的系統(tǒng)。
版本控制其實最重要的是可以記錄文件修改歷史記錄,從而讓用戶能夠查看歷史版本,方便版本切換。
2. 為什么需要版本控制
個人開發(fā)過渡到團隊協(xié)作。
3. 版本控制的工具
集中式版本控制工具
CVS、SVN(Subversion)、VSS……
集中化的版本控制系統(tǒng)諸如 CVS、SVN 等,都有一個單一的集中管理的服務(wù)器,保存所有文件的修訂版本,而協(xié)同工作的人們都通過客戶端連到這臺服務(wù)器,取出最新的文件或者提交更新。多年以來,這已成為版本控制系統(tǒng)的標(biāo)準(zhǔn)做法。
這種做法帶來了許多好處,每個人都可以在一定程度上看到項目中的其他人正在做些什么。而管理員也可以輕松掌控每個開發(fā)者的權(quán)限,并且管理一個集中化的版本控制系統(tǒng),要遠比在各個客戶端上維護本地數(shù)據(jù)庫來得輕松容易。
事分兩面,有好有壞。這么做顯而易見的缺點是中央服務(wù)器的單點故障。如果服務(wù)器宕機一小時,那么在這一小時內(nèi),誰都無法提交更新,也就無法協(xié)同工作。
分布式版本控制工具
Git、Mercurial、Bazaar、Darcs……
像 Git 這種分布式版本控制工具,客戶端提取的不是最新版本的文件快照,而是把代碼倉庫完整地鏡像下來(本地庫)。這樣任何一處協(xié)同工作用的文件發(fā)生故障,事后都可以用其他客戶端的本地倉庫進行恢復(fù)。因為每個客戶端的每一次文件提取操作,實際上都是一次對整個文件倉庫的完整備份。
分布式的版本控制系統(tǒng)出現(xiàn)之后,解決了集中式版本控制系統(tǒng)的缺陷:
- 服務(wù)器斷網(wǎng)的情況下也可以進行開發(fā)(因為版本控制是在本地進行的)
- 每個客戶端保存的也都是整個完整的項目(包含歷史記錄,更加安全)
4. Git 簡史
5. Git 工作機制
工作區(qū):代碼磁盤保存的目錄
暫存區(qū):臨時存儲工作區(qū)的內(nèi)容
本地庫:某一個版本的代碼,當(dāng)代碼添加到本地庫生成歷史版本后,就會永久性保存了
6. Git 和代碼托管中心
代碼托管中心是基于網(wǎng)絡(luò)服務(wù)器的遠程代碼倉庫,一般我們簡單稱為遠程庫。
局域網(wǎng)
- GitLab
互聯(lián)網(wǎng)
- GitHub(外網(wǎng))
- Gitee 碼云(國內(nèi)網(wǎng)站)