Git指令中fetch和pull的區別


fetch和pull的區別

1. git fetch:相當於是從遠程獲取最新版本到本地,但不會自動 merge

git fetch origin master
git log -p master origin/master
git merge origin/master

以上命令的含義:

首先從遠程的 origin 的 master 主分支下載最新的版本到 origin/master 分支上

然后比較本地的 master 分支和 origin/master 分支的差別

最后進行合並

上述過程其實可以用以下更清晰的方式來進行:

git fetch origin master:tmp
git diff tmp
git merge tmp

從遠程獲取最新的版本到本地的 tmp 分支上,之后再進行 比較、合並

2. git pull:相當於是從遠程獲取最新版本並 merge 到本地

git pull origin master

上述命令其實相當於 git fetch + git merge

在實際使用中,git fetch 更安全一些,因為在 merge 前,我們可以查看更新情況,然后再決定是否合並。


免責聲明!

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



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