git clone之后究竟發生了什么?


開發者鍵入git clone后,git會將遠端所有的代碼和branchs下載到開發者本地。

開始覺得很奇怪,git branch只看到一個master branch。通過git banch -r可以看到其他分支,git banch -r看到的並不是遠端服務器的分支。而是本地的遠端分支。

git clone后在remote/origin repository區保存一份和此時遠端分支一模一樣的代碼和branchs,而且該區域是不能修改的。

該區域不同於本地倉庫。所以本地倉庫要想獲取其他分支,需要從本地的遠端區域拉出另外的分支。而新拉出的分支時存儲在local repository區域里,這個區域是可以修改的,也就是git branch看到的那些branchs,git checkout -b master origin/master不是從遠端拉出一個branch,而是從本地的遠端區域里的。

這樣后,git fetch就是更新本地的遠端代碼區域(remote/origin repository)的數據同服務端的代碼保持一致。git pull,就是把remote/origin repository區域中的相應的branch(已更新到服務端最新代碼) merge到本地區域(local repository)的branch上。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM