Git pull命令與fetch命令的區(qū)別
Git pull命令與fetch命令的區(qū)別
今天在公司碰到個(gè)問(wèn)題,公司不使用master分支作為主分支,而使用release分支作為主分支,這就碰到了個(gè)問(wèn)題,也就是當(dāng)clone一個(gè)項(xiàng)目下來(lái)的時(shí)候,如果master跟release分支有沖突,就不能pull了,自己還要解決沖突。
剛下一個(gè)項(xiàng)目,也不懂沖突到底怎么回事,也就很難搞了。
這個(gè)時(shí)候,就不得不提Git的兩個(gè)命令,git fetch和git pull
Git中從遠(yuǎn)程的分支獲取最新的版本到本地有這樣2個(gè)命令:
Git fetch
git fetch:相當(dāng)于是從遠(yuǎn)程獲取最新版本到本地,不會(huì)自動(dòng)merge
git fetch origin master git log -p master..origin/master git merge origin/master
以上命令的含義:
首先從遠(yuǎn)程的origin的master主分支下載最新的版本到origin/master分支上
然后比較本地的master分支和origin/master分支的差別
最后進(jìn)行合并
上述過(guò)程其實(shí)可以用以下更清晰的方式來(lái)進(jìn)行:
# 將遠(yuǎn)程release分支拉到本地的releaselocal分支 git fetch origin releaser:releaselocal # 切換到tmp分支 git checkout releaselocal
這樣也就解決了這個(gè)問(wèn)題,之后master分支刪除掉,直接從releaselocal創(chuàng)建master分支,這樣所有的分支都跟遠(yuǎn)端的release分支同步了。
Git pull
git pull:相當(dāng)于是從遠(yuǎn)程獲取最新版本并merge到本地
git pull origin release:release
上述命令其實(shí)相當(dāng)于git fetch 和 git merge
這個(gè)命令其實(shí)不太靠譜,如果本地沒(méi)有release分支的話,會(huì)自動(dòng)根據(jù)當(dāng)前分支branch一個(gè)release分支,然后來(lái)執(zhí)行pull操作,所以不太靠譜
所以我通常的做法是保留本地的master分支不進(jìn)行任何commit,然后通過(guò)master分支來(lái)進(jìn)行切換,這樣在master分支上是clean的,然后通過(guò)之前的命令就不產(chǎn)生沖突了
之后在release分支上進(jìn)行merge操作,安全很多。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
2018即將推出的Apache Spark 2.4都有哪些新功能
即將發(fā)布的 Apache Spark 2.4 版本是 2.x 系列的第五個(gè)版本。 本文對(duì)Apache Spark 2.4 的主要功能和增強(qiáng)功能進(jìn)行了概述,需要的朋友可以參考下2018-09-09
Linux使用dd命令來(lái)復(fù)制和轉(zhuǎn)換數(shù)據(jù)的操作方法
Linux 中的 dd 命令是一個(gè)功能強(qiáng)大的數(shù)據(jù)復(fù)制和轉(zhuǎn)換實(shí)用程序,它以較低級(jí)別運(yùn)行,通常用于創(chuàng)建可啟動(dòng)的 USB 驅(qū)動(dòng)器、克隆磁盤(pán)和生成隨機(jī)數(shù)據(jù)等任務(wù),本文給大家介紹了Linux 如何使用dd命令來(lái)復(fù)制和轉(zhuǎn)換數(shù)據(jù),需要的朋友可以參考下2025-01-01
Linux服務(wù)器部署JavaWeb項(xiàng)目完整教程
這篇文章主要介紹了Linux服務(wù)器部署JavaWeb項(xiàng)目完整教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
linux命令實(shí)現(xiàn)音頻格式轉(zhuǎn)換和拼接的方法
今天小編就為大家分享一篇linux命令實(shí)現(xiàn)音頻格式轉(zhuǎn)換和拼接的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08
Linux使用CentOS 7內(nèi)核修改鏡像源解決“Could not resolve&nb
解決yum安裝問(wèn)題需檢查網(wǎng)絡(luò)、備份配置、下載新源、生成緩存及更新源,以恢復(fù)正常使用2025-07-07
Apache和Tomcat有什么區(qū)別_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
Apache 和 Tomcat 都是web網(wǎng)絡(luò)服務(wù)器,兩者既有聯(lián)系又有區(qū)別。下面通過(guò)本文給大家介紹Apache和Tomcat的區(qū)別,感興趣的朋友一起看看吧2017-08-08

