rebase后Git分支出现了分歧,那么为什么要rebase呢?

2024-02-03

最近我收到通知说我的分支出现了分歧。就在那时,我创建了一个功能分支,将其推送到远程,并在几天后再次开始处理它时与 master 进行了 rebase。

git checkout -b feature-branch
git push origin feature-branch:feature-branch

...当在主人...

git pull origin master
git checkout feature-branch
git rebase master

但是当我想再次推送我的分支时,它说:

On branch feature-branch
Your branch and 'origin/feature-branch' have diverged,
and have 67 and 1 different commit each, respectively.

我在“rebase后Git分支出现分歧 https://stackoverflow.com/questions/19016698/git-branch-diverged-after-rebase":

由于您已经推送了分支,因此您应该合并到 源分支,而不是针对它重新建立基础。

Question

看完之后this https://www.atlassian.com/git/tutorials/merging-vs-rebasing/conceptual-overview我仍然不完全理解我应该在流程中做哪些不同的事情,以及为什么我仍然想使用 git rebase。希望有人能解释一下,谢谢!


这个想法是只有当你还没有推送时才重新建立基础,重放你的local承诺。

一旦你推送了(并且在团队中工作),你就不应该在之上重新建立分支master,因为它重写了 SHA1,迫使您强制推送分支的新状态。

制作一个git merge master在这里最好进入您的分支:您在本地解决冲突,然后您可以进行更多提交和定期推送。

更多信息请访问 ”合并有什么区别master进入分支并将分支合并到master? https://stackoverflow.com/a/26384695/6309"

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

rebase后Git分支出现了分歧,那么为什么要rebase呢? 的相关文章

  • 当当前分支上有未提交的更改时签出另一个分支

    大多数时候 当我尝试签出另一个现有分支时 如果我在当前分支上有一些未提交的更改 Git 会不允许我这样做 所以我必须首先提交或隐藏这些更改 然而 有时 Git 确实允许我在不提交或存储这些更改的情况下签出另一个分支 并且它会将这些更改携带到
  • Git 提交失败:“请使用 -m 或 -F 选项提供消息。”

    当我键入 git commit 命令来提交文件时 我收到以下错误消息 Microsoft Visual Studio 微软 找不到命令 错误 核心编辑器 Microsoft Visual Studio 存在问题 请使用 m 或 F 选项提供
  • 将bitbucket发布到数字海洋

    我本质上是试图使用 bitbucket 来理解 git 的概念 我一直在通过修改本地帐户和 bitbucket 帐户之间的文件来练习版本控制 事实证明这很有帮助 现在我正在尝试弄清楚如何将文件从 bitbucket 或者我猜是 GitHub
  • Git difftool 未启动外部 DiffMerge 程序

    我一直遵循 戴夫的博客条目 http www davesquared net 2009 05 setting up git difftool on windows html 链接在此answer https stackoverflow co
  • git 排除与忽略

    I use Tower http www git tower com 用于在 Mac 中使用 Git Tower 中的设置具有创建 gitignore 的 忽略 部分 但它还有另一个名为 排除 的部分 似乎可以将排除与 git ls fil
  • 仅使用 Git grep 的文件名

    我只想查看文本中包含特定单词的不同文件 current directory git grep word 显示文件中具有匹配单词的每一行 所以我尝试了这个 current directory git grep word files with
  • 显示 master 之前/之后有多少提交分支的别名

    新的 Bitbucket Branches 页面非常棒 它显示每个分支领先 落后于 master 的提交数量 是否有显示相同信息的 Git 别名 信息应显示 分店名称 上次更新是什么时候 其背后有多少提交 有多少提交领先于 master 看
  • 如何在不在存储库中的情况下执行 Git 命令?

    有没有一种方法可以在不位于存储库的情况下对存储库执行 Git 命令 例如这样的事情 git home repo log 请不要告诉我cd到它 我正在通过一个exec call Use C作为 git 的第一个参数 git C home re
  • git 是否有任何静态接口?

    我一直在寻找一个宁静的 git api 但似乎没有找到 我得到的最接近的是 Github 的 api 来访问一些存储库信息 还有其他的实施吗 Orion Git API http wiki eclipse org Orion Server
  • 是否可以检测 http git 远程是智能还是愚蠢?

    我正在我的应用程序中实现一个选项来使用 depth 1制作 git repo 的最小功能克隆 我刚刚意识到愚蠢的 http 传输不支持 depth 我想自动检测 http 远程是愚蠢的还是聪明的 这样我就可以省略 depth与哑 http
  • 我应该把 .gitignore 放在哪里才能影响所有项目?

    我应该在哪里放置一个 gitignore文件以便我的所有项目都使用这些设置 我尝试了各种文件夹 只有将其放入项目文件夹中才能使其正常工作 但是设置 当然 仅应用于该项目 而不是我的其他项目 git 包含一个 全局 配置选项 可以告诉它在启动
  • 无法使用 Git 部署从多项目解决方案部署正确的网站到 Azure

    我有一个解决方案 它有一个 mvc 网站 WebApplication1 该网站依赖于解决方案中的另一个项目 WebAppCore 源代码托管在 Visual Studio Online 上的 git 中 我配置了持续集成 一切都构建得很好
  • 在我的例子中,GIT 添加恢复(保留更改)

    在我对文件进行更改之后 我用git add FILE NAME 然后 我想将其恢复为未添加但与此同时保留更改 这个怎么做 git reset FILE NAME会做的 See the git reset manual https git s
  • Git checkout 不会丢弃我的更改

    我在 Windows XP 上使用 git 1 7 1 和 cygwin 这个问题可以通过例子得到最好的说明 git status On branch master Changed but not updated use git add
  • Git 认为我每次进行小更改时都在重写我的一个文件

    我有一个中等大小的 Java 文件 每次我对一个文件 BuildTable java 进行更改时 Git 都会将其报告为巨大的更改 即使只是一两行 BuildTable java 大约有 200 行 本次提交中的更改仅更改了一行 git d
  • 如何更改 GitHub 上的文件模式?

    git add test file git commit m first commit create mode 100644 test file git push git update index add chmod x test file
  • 在推送后检索孤立的提交对象 --force

    Doing push force总是有点冒险 这里有一个例子 说明它如何产生一些问题 例如远程丢失修订版本 假设 有一个人Bob已更新远程master分支来自B to C 还有另外一个人Mike还没有获取此更新并且HEAD of his m
  • GitLab:无法将代码推送到服务器?

    我已经在 Ubuntu 服务器上安装了 GitLab 一切似乎都工作正常 除了我无法向服务器推送 拉取 克隆 当我按下时 我收到一般错误消息 fatal Could not read from remote repository Pleas
  • 如何仅根据拉取请求在 Jenkins 中运行阶段?

    我现在有一个基于 Jenkinsfile 的管道 其中包含多个阶段 每次提交到 Github 时都会由 webhook 触发 我想在每次提交时保持 构建 和 单元测试 阶段运行 但仅在分支准备拉取请求时运行 集成测试 阶段 我想要的是 st
  • 使用 git 合并两个截然不同的分支?

    我有我的master分支和我的verydifferentbranch它们有相同的祖先 大约 300 次提交前 现在verydifferentbranch功能完整我想把它放在master下面branch 进行变基会导致每个补丁都有很多合并冲突

随机推荐