git pul和git fetch的区别

<blockquote class="wp-block-quote">

<p><strong>git fetch 和git pull区别</strong>有:1、目的不同;2、用途不同;3、用法不同;4、远端跟踪分支不同;5、拉取不同;6、commitID不同;7、安全性不同。其中,目的不同指fetch从远程获取最新版本到本地,但不会自动 merge,pull是从远程获取最新版本并 merge 到本地。</p>

</blockquote>

## 1、目的不同

**git fetch:**从远程获取最新版本到本地,但不会自动 merge,用于从远程跟踪分支下载和查看其他人完成的最新提交,但不将这些提交合并到本地存储库中。它从远程存储库中获取更改并将其存储在本地存储库中。(例如远程仓库master新创建了分支,其他基于master拉去的分支获取不到这个分支,使用git fetch可以获取到master的分支)

**git pull:**从远程获取最新版本并 merge 到本地,它会自动将提交合并到您的本地存储库中,而无需查看提交。(获取当前分支的远程分支的代码,在主分支更新的代码获取不到)

## 2、用途不同

**git fetch**:Fetch 只是通过将提交从远程存储库传输到本地存储库来使远程存储库的本地副本保持最新。将提交导入到本地分支将允许您跟上其他人所做的更改。

**git pull**:Pull 将更改引入本地代码存储库,以使用远程存储库更新本地存储库。

## 3、用法不同

**git fetch**:当您想要查看其他人正在处理的内容时,Fetch 命令非常有用,这使您可以在将更改与本地存储库集成之前轻松查看其他开发人员推送的提交。您可以通过使用命令“git fetch ”来做到这一点,该命令从远程存储库中获取所有分支。

**git pull**:您可以使用命令“git pull ”来执行拉取,该命令检索分支的远程副本并将其与本地副本合并。这与使用命令“git fetch ”后跟“git merge ”完全相同。

## 4、远端跟踪分支不同

**git fetch**:Git fetch能够直接更改远端跟踪分支。

**git pull**:git pull无法直接对远程跟踪分支操作,我们必须先切回本地分支然后创建一个新的commit提交。

## 5、拉取不同

git fetch:Git fetch会将数据拉取到本地仓库 – 它并不会自动合并或修改当前的工作。

git pull:git pull是从远程获取最新版本并merge到本地,会自动合并或修改当前的工作。

git pull = git fetch + git merge 

## 6、commitID不同

**git fetch**:使用Git fetch更新代码,本地的库中master的commitID不变,还是等于1。

**git pull**:使用git pull更新代码,本地的库中master的commitID发生改变,变成了2。

## 7、安全性不同

**git fetch** :git fetch是一个更安全的选择,因为它从你的远程仓库拉入所有的提交,但不会对你的本地文件做任何修改。这给了你足够时间去发现远程仓库自从你上次拉取后到现在为止发生的变化。你可以在合并前检查哪些文件有变化,哪些文件可能导致冲突。

**git pull**:git pull相当于运行git fetch,然后立即将你的改动合并到本地仓库。这样的确少了一个步骤,但是也会带来一些风险。

个人小程序:

采用uni-app+云服务开发,有喜欢的可以@我,免费开放代码和手把手教你搭建

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

fzl_1996

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值