亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Git pull命令與fetch命令的區(qū)別

 更新時(shí)間:2017年03月10日 08:51:29   作者:EthanPark  
這篇文章主要介紹了Git pull命令與fetch命令的區(qū)別的相關(guān)資料,需要的朋友可以參考下

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)文章

最新評(píng)論