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

首頁 > 服務器 > Web服務器 > 正文

Git pull命令與fetch命令的區別

2024-09-01 13:50:57
字體:
來源:轉載
供稿:網友

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操作,安全很多。

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


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 岑溪市| 罗山县| 宜黄县| 东明县| 井研县| 汝南县| 阳泉市| 绥芬河市| 靖边县| 三门县| 军事| 兰坪| 龙门县| 施甸县| 阳原县| 西盟| 灵山县| 河西区| 会东县| 郸城县| 桦甸市| 巴中市| 黄石市| 比如县| 界首市| 德昌县| 巍山| 甘南县| 临江市| 南乐县| 芦溪县| 兰考县| 苏尼特左旗| 侯马市| 华蓥市| 井陉县| 遂昌县| 上饶县| 武夷山市| 搜索| 吉林市|