第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

前端錯(cuò)題集|git pull 和git fetch的區(qū)別是什么?

標(biāo)簽:
前端工具

Git是工作中常用的工具,现在关于Git命令的问题在面试中也越来越常见。相信大家对常用的命令都非常熟悉了,但是可能没有深究过细节。今天小编就帮大家分析一下git pull 和 git fetch的区别。

https://img1.sycdn.imooc.com//5d2d9a60000150fe06520444.jpg

image

二者的区别可以这样简单的理解:**git pull = git fetch + git merge **。面试如果遇到这个问题可以先给出这样的回答,面试官就会觉得你理解了核心的区别。

那git ftech做了什么事情呢?先说两个概念:

FETCH_HEAD: 是一个版本链接,记录在本地的.git/FETCH_HEAD文件中,指向着目前已经从远程仓库取下来的分支的末端版本。

commit-id:在每次本地工作完成后,都会做一个git commit 操作来保存当前工作到本地的repo, 此时会产生一个commit-id,这是一个能唯一标识一个版本的序列号。 在使用git push后,这个序列号还会同步到远程仓库。

https://img1.sycdn.imooc.com//5d2d9a64000176cf06550296.jpg

image

FETCH_HEAD文件及其内容

git fetch会更新git remote 中所有的远程仓库所包含分支的最新commit-id, 将其记录到.git/FETCH_HEAD文件中。 也会拉取代码到分支,只是不会合并。

例如获取master分支的提交更新:

git fetch origin master

fetch后可以通过命令 **git log -p FETCH_HEAD **查看更新的提交内容:

https://img1.sycdn.imooc.com//5d2d9a6800017e9a06540406.jpg

image

在fetch之后,可以用git diff查看改动,git merge合并代码。

git pull : 首先,基于本地的FETCH_HEAD记录,比对本地的FETCH_HEAD记录与远程仓库的版本号,然后git fetch 获得当前指向的远程分支的后续版本的数据,然后再利用git merge将其与本地的当前分支合并。所以可以认为git pull是git fetch和git merge两个步骤的结合。



作者:魏永_Owen_Wei
链接:https://www.jianshu.com/p/44f257edf03d


點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊有機(jī)會得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號

舉報(bào)

0/150
提交
取消