如何处理这个git警告?“不建议在不指定如何协调分歧分支的情况下进行拉动”

戴维·卡西拉吉(Davide Casiraghi):

之后,git pull origin master我得到以下消息:

warning: Pulling without specifying how to reconcile divergent branches is
discouraged. You can squelch this message by running one of the following
commands sometime before your next pull:

  git config pull.rebase false  # merge (the default strategy)
  git config pull.rebase true   # rebase
  git config pull.ff only       # fast-forward only

You can replace "git config" with "git config --global" to set a default
preference for all repositories. You can also pass --rebase, --no-rebase,
or --ff-only on the command line to override the configured default per
invocation.

remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (4/4), 51.49 KiB | 850.00 KiB/s, done.

至此拉取已成功完成。但是,我仍然对此消息表示怀疑。
在这种情况下最好的办法是什么?

木料:

您的分支可能正在分歧。

在默认模式下,git pull是git fetch的简写,其次是git merge FETCH_HEAD。

执行时git pull origin master
git pull执行合并,通常会创建合并提交。因此,默认情况下,从远程进行拉动并非无害操作:它可以创建以前不存在的新提交sha。这种行为可能会使用户感到困惑,因为看起来应该是无害的下载操作实际上会以不可预测的方式更改提交历史记录。

为了避免这种情况,您需要

git pull --ff-only

使用git pull --ff-only,Git仅在可以“快速转发”而不创建新提交的情况下更新您的分支。如果无法完成此操作(如果本地和远程发生分歧),则git pull --ff-only简单地中止并显示一条错误消息。

您可以将您的Git客户端配置--ff-only为默认情况下始终使用,因此即使您忘记了命令行标志,也可以得到以下行为:

git config --global pull.ff only

这里取

更新:正如Joe在其回答中指出的那样,此警告已添加到Git 2.27中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

来自分类Dev

在同一分支上工作,如何在不丢失更改的情况下进行拉动?

来自分类Dev

如何在不拉动的情况下覆盖传入的提交?

来自分类Dev

如何在不覆盖分支更新的情况下从master同步git分支?

来自分类Dev

如何在不指定每个分支的情况下将git存储库的所有分支克隆到它们自己的文件夹中?

来自分类Dev

Git:如何在不接触工作目录的情况下切换分支?

来自分类Dev

如何在不指定范围键值的情况下对DynamoDB查询结果进行排序

来自分类Dev

如何在属性类型不固定的情况下反序列化json-可以为空字符串或对象,请提出建议。如何处理这种情况?

来自分类Dev

如何在不写select的情况下进行分组

来自分类Dev

如何在不丢失分支的情况下将mercurial存储库转换为git存储库?

来自分类Dev

如何在不丢失历史记录的情况下将项目的某些部分移到Git分支中?

来自分类Dev

在不指定端口的情况下进行gRPC路由

来自分类Dev

Firefox:如何在不破坏固定位置元素的情况下对整个页面进行灰度处理?

来自分类Dev

如何在不锁定的情况下对具有关联ID的单身人士进行“跨层”多线程处理?

来自分类Dev

Rawpy:如何在不掺杂像素数据的情况下对原始图像进行后处理?

来自分类Dev

如何在不首先连接所有内容的情况下以增量方式对PostgreSQL中的聚合结果进行哈希处理

来自分类Dev

您如何在不“签出”的情况下获取远程分支

来自分类Dev

github fork:您的分支是5承诺如何在不推送的情况下清理它

来自分类Dev

如何在不设置上游的情况下将当前分支推送到远程?

来自分类Dev

如何在不获取原点的情况下找到远程分支的年龄

来自分类Dev

如何在不增加孤儿的历史记录的情况下,将主分支的更改git合并到孤儿分支?

来自分类Dev

如何在tensorflow中不生成警告的情况下检查是否存在GPU

来自分类Dev

如何在不触发警告的情况下将整数值转换为指针地址

来自分类Dev

如何在不扩展扩展的情况下避免对客户发出过时的警告

来自分类Dev

如何在不撤消所有更改的情况下拉git分支?

来自分类Dev

如何在不添加历史记录的情况下将Git分支标记为已合并(Git merge -s我们的--squash)

来自分类Dev

如何在不签出该分支的情况下将最新代码拉到另一个分支?

来自分类Dev

在这种情况下如何处理ToolStripMenuItem?

来自分类Dev

在无关的情况下该如何处理?

来自分类Dev

默认情况下,COBOL如何处理除法舍入?

TOP 榜单

热门标签

归档