国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > 建站經驗 > 正文

Git pull命令與fetch命令的區別

2019-11-02 14:09:55
字體:
來源:轉載
供稿:網友

Git pull命令與fetch命令的區別

今天在公司碰到個問題,公司不使用master分支作為主分支,而使用release分支作為主分支,這就碰到了個問題,也就是當clone一個項目下來的時候,如果master跟release分支有沖突,就不能pull了,自己還要解決沖突。

剛下一個項目,也不懂沖突到底怎么回事,也就很難搞了。

這個時候,就不得不提Git的兩個命令,git fetch和git pull

Git中從遠程的分支獲取最新的版本到本地有這樣2個命令:

Git fetch

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

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

以上命令的含義:

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

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

最后進行合并

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

# 將遠程release分支拉到本地的releaselocal分支git fetch origin releaser:releaselocal# 切換到tmp分支git checkout releaselocal

這樣也就解決了這個問題,之后master分支刪除掉,直接從releaselocal創建master分支,這樣所有的分支都跟遠端的release分支同步了。

Git pull

git pull:相當于是從遠程獲取最新版本并merge到本地

git pull origin release:release

上述命令其實相當于git fetch 和 git merge

這個命令其實不太靠譜,如果本地沒有release分支的話,會自動根據當前分支branch一個release分支,然后來執行pull操作,所以不太靠譜

所以我通常的做法是保留本地的master分支不進行任何commit,然后通過master分支來進行切換,這樣在master分支上是clean的,然后通過之前的命令就不產生沖突了

之后在release分支上進行merge操作,安全很多。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 凤翔县| 额济纳旗| 潼南县| 克东县| 昂仁县| 长沙市| 古交市| 汤阴县| 四会市| 瑞丽市| 白沙| 高陵县| 嘉禾县| 忻城县| 项城市| 南汇区| 邢台县| 毕节市| 内江市| 辽阳市| 扎鲁特旗| 平昌县| 凯里市| 怀来县| 烟台市| 荥经县| 施秉县| 隆尧县| 东光县| 香港| 钟祥市| 筠连县| 丰城市| 淮滨县| 远安县| 锦州市| 昆明市| 比如县| 漳平市| 弥勒县| 宿松县|