Git
簡介
- Git是一個開源的分布式版本控制系統,跨平臺,支持Windows、Linux、MacOS。主要是用于項目的版本管理,是由林納斯·托瓦茲(Linux Torvalds)在2005年為Linux內核開發而創建。
起因
- 在2002年至2005年間,Linux內核開發團隊使用BitKeeper(一個專有的版本控制系統)來管理代碼,Linux團隊匯集了全球頂尖人才,免不了有人想破解BitKeeper的軟件,BitKeeper的開發公司BitMover在2005年停止了向Linux團隊的免費版本支持。
- 于是成功惹怒了Linus這位大佬,迫使Linus尋找一個高效、分布式的版本控制工具。由于對當時其他工具(如SVN、CVS)的性能和功能不滿,Linus決定開發一個自己的版本控制系統,然后一周后,Git這個延續至今的閃耀新星誕生。只能說大佬就是大佬。
- 站在歷史的角度來說,BitKeeper公司也是錯過了一次流芳百世的機會/商機,如果BitKeeper公司繼續提供使用,可能也不會有Git的問世。歷史的滾滾車輪總是這么奇妙,悄無聲息,又很神秘,好像一切都是安排好的一樣。
設計目標
- 高效性:能夠快速處理大型項目(如Linux內核)的版本控制
- 分布式:允許開發者在本地操作完整的歷史記錄,無需依賴中央服務器
- 數據完整性:通過SHA-1哈希確保版本歷史的可靠性
- 簡單易用:提供直觀的命令和靈活的工作流程
發展歷史
-
幾個關鍵階段
-
2005年4月7日正式上線
-
2005-2008年:社區接管與功能完善
-
2008-2012年:普及與生態系統繁榮
-
2012-2020年:性能優化與新功能
-
2020年至今:現代化與企業級應用
-
當今地位
- 普及度:Git是全球最流行的版本控制系統,幾乎所有主流代碼托管平臺(Github、GitLab、Bitbucket)都是以Git為核心
- 影響力:Git不僅用于軟件開發,還被應用于書籍寫作、法律文檔管理、數據科學等領域
- 維護:Git由開源社區進行維護,擁有全球頂尖的開發者貢獻者,代碼托管在GitHub上
Git下載與安裝
- 官網地址:https://git-scm.com/
- GitHub地址:https://github.com/git/git
基本概念
- 倉庫(Repository):存儲代碼和版本歷史的地方,分為本地倉庫和遠程倉庫。
- 提交(Commit):代碼變更的快照,記錄修改內容和元數據(如作者、時間)。
- 分支(Branch):代碼的獨立開發線,默認分支通常為main。
- 合并(Merge):將不同分支的更改整合到一起。
- 遠程倉庫(Remote):托管在服務器上的倉庫,如GitHub、GitLab。
常用命令
- 初始化:git init(創建新倉庫)
- 克隆:git clone (復制遠程倉庫)
- 添加:git add (將更改加入暫存區)
- 提交:git commit -m “message”(保存更改到本地倉庫)
- 推送:git push origin (上傳本地更改到遠程倉庫)
- 拉取:git pull(從遠程倉庫獲取更新)
- 分支:git branch(查看分支)、git checkout -b (創建并切換分支)
- 合并:git merge (合并分支)
應用場景
- 軟件開發:管理代碼版本,支持團隊協作。
- 開源項目:通過GitHub等平臺實現全球開發者貢獻。
- 非代碼場景:管理文檔、配置文件、數據科學項目等。