Git是一個開源的分散式版本控制系統。可以有效、高速的處理從很小到非常大的專案版本管理。
產生背景:
Git 是 Linus Torvalds 為了幫助管理 Linux 核心開發而開發的一個開放原始碼的版本控制軟體。
分散式:
分而治之,歸總融合,更有效率便捷。
分佈式相比於集中式的最大區別在於開發者們可以提交到本地,每個開發者通過克隆(git clone //命令語句,下面會有詳細說明),在本地機器上拷貝一個完整的Git倉庫。
可回退:
git可以完整記錄開發版本的迭代及對應狀態。一旦發生意外狀況,可以回退至上一穩定版本。
git的另一大優勢在於Github的加持,非常有益於團隊協作。
從一般開發者的角度來看,git有以下功能:
1、從伺服器上複製完整的Git倉庫(包括程式碼和版本資訊)到單機上。
2、在自己的機器上根據不同的開發目的,建立分支,修改程式碼。
3、在單機上自己建立的分支上提交程式碼。
4、在單機上合併分支。
5、把伺服器上最新版的程式碼fetch下來,然後跟自己的主分支合併。
6、產生補丁(patch),把補丁寄給主開發者。
7、看主開發者的回饋,如果主開發者發現兩個一般開發者之間有衝突(他們之間可以合作解決的衝突),就會要求他們先解決衝突,然後再由其中一個人提交。如果主開發者可以自己解決,或沒有衝突,就通過。
8、一般開發者之間解決衝突的方法,開發者之間可以使用pull 指令解決衝突,解決完衝突後再向主開發者提交補丁。
從主開發者的角度(假設主開發者不用開發程式碼)看,git有以下功能:
1、查看郵件或透過其它方式查看一般開發者的提交狀態。
(可以看出你工作中提交了多少代碼,你是在工作還是在遊戲,恩,,,喝個茶吧。)
2、打上補丁,解決衝突(可以自己解決,也可以要求開發者之間解決以後再重新提交,如果是開源項目,還要決定哪些補丁有用,哪些不用)。
3、向公用伺服器提交結果,然後通知所有開發人員。
或許你對pull fetch 等git指令還不清楚,來,送你張圖~~
建立本地倉庫
註冊Github帳號並建立一個倉庫。
設定SSH金鑰
如果是已有專案(一般是這種情況,公司往往已經有完善的專案)fork到你自己的帳戶,clone到本地倉庫,進行相關的開發維護。
新專案的話,只需要在本地進行開發,然後上傳到Github上的倉庫, 提交、聯調就可以了。
以上是Git入門教學的詳細內容。更多資訊請關注PHP中文網其他相關文章!