以前對Git的瞭解,只是知道它是版本控制系統,會幾個命令提交代碼到遠程倉庫,至關於只知其一;不知其二,今天系統的學習了下,雖然沒有很深刻的研究,但最起碼的操做和原理都弄明白了,媽媽不再用擔憂我不會Git了。。。而後接下來就簡單的整理一下我學到的內容,也方便本身之後忘記了回來查看==、安全
首先Git是什麼?服務器
Git是一個分佈式版本控制系統,什麼是分佈式版本控制系統,好比說你有一個文件修改了不少次,每次修改前你都要把以前的內容再保存一份,以防未來還會用到,結果就是你保存了一大堆文件,而且也很差查找,還有若是你的文件須要別人的參與,那我的和你同時對文件進行修改,當他把文件提交給你時,你還要把你的修改從新在他修改完的基礎上再次修改,很麻煩!(描述的好囉嗦。。)因此,你很但願有個軟件或系統能夠記錄文件每次的改動,而且能夠多人協做,分佈式版本控制系統就能夠作到。而Git是目前最早進的分佈式版本控制系統。分佈式
Git的由來學習
崇尚開源的Linux的建立者Linus最開始管理全世界貢獻的代碼的方式是手工,至關麻煩,雖然有免費的集中式版本控制系統CVS、SVN,但Linus認爲這些集中式版本控制系統不只速度慢並且必需要聯網,還有一些商版的體驗要好一些,可是要付費,違反了Linux開源的精神。後來,BitMover公司爲Linus提供了免費的商業的版本控制系統BitKeeper,然而Linux社區裏的一些人想要破解BitKeeper的協議,最終BitMover公司再也不爲Linus提供免費的BitKeeper。故事的最後Linus花了兩週的時間用C寫出了Git!(其實我想說,他早幹嗎去了,爲何最開始不直接本身寫一個呢)spa
集中式與分佈式版本控制
集中式就是版本庫在中央服務器中,開發者開發的時候要先從中央服務器取得最新版本,而後再將修改後的版本提交到中央服務器,缺點是必需要聯網。開發
分佈式沒有中央服務器,每一個開發者的電腦上都有一份完整的版本庫,安全性極高,不須要聯網,也能夠有一臺電腦專門充當「中央服務器」來方便你們「交換修改」。博客
參考博客 http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000it
下一篇 具體的Git操做社區