问题标签 [rebase]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
4341 浏览

git - 通过变基保持远程存储库同步

我有一种情况,我必须将主题分支重新设置为主分支。没关系,这是正常的变基案例,效果很好。

复杂的是,当我试图让这个过程在一个裸露的远程存储库上同步时。

例如

现在我向我推送到 origin/master 的 clone/master 提交,到目前为止一切顺利。

这就是我想要结束的地方:

好像进不去,求大神帮忙

工作流程是:

  1. 克隆裸远程源
  2. 更改克隆/主控
  3. 将更改推送到 origin/master
  4. 将克隆/主题重新设置为原点或克隆主控 - 似乎没有太大区别
  5. 现在我希望原点/主题反映变基,所以我想推送,但首先我必须拉动以使克隆/主题快进,然后我最终合并,其中包含来自克隆/主题的所有原始提交以及来自的所有提交来源/主题在顶部。
0 投票
2 回答
2815 浏览

svn - 我做错了吗?将 SVN 更改从主干合并到 git 分支。使用合并 --squash

我们使用树枝来做我们的工作,并在很大程度上保持树干的原始状态。在将我的更改从我的分支合并到主干之前,我想确保我已经从 svn/trunk 获得了最新的更改到我的本地分支。我花了一点时间才弄清楚,但这是我想出的工作流程,我想知道是否有更好的方法。(在这个例子中我是这个分支上唯一的一个,所以不需要 git svn rebase 来改变这个分支)

我这样做的原因是:

  • 没有 squash 的 git merge 会添加一个指向主干的 git-svn-id,所以 dcommit 会推到那里
  • 重新定位到 svn/trunk 会使这个分支完全脱离轨道
0 投票
2 回答
982 浏览

linux - linux/gcc 中是否有 rebase (dll) 命令?

在 Windows 上,rebase 更改了 dll 的首选加载位置,并且(我已阅读)可以显着减少应用程序加载时间。Linux 和/或 gcc 上是否有类似的概念?

0 投票
2 回答
367 浏览

svn - 究竟如何进行 Subversion pre-1.5 风格的合并?

我现在必须处理 Subversion 1.4 合并,并找到了这个问题的答案,它准确地描述了我的问题。实际问题涉及gitSVN 的 -style rebase 和 merge 问题,这些问题会产生树冲突。它包括以下建议:

[...] 不是将分支范围合并到指向主干的工作副本,而是希望将“FROM trunk@HEAD TO branch@HEAD”与指向主干的工作副本合并。在本质上:

“给我所有我需要使主干与分支相同的更改”。

现在我想知道如何与 SVN 进行实际合并,因为svn merge只合并到工作目录。原始答案中有错字还是我遗漏了什么?

0 投票
3 回答
20808 浏览

git - 如何合并没有共同祖先的两个分支?

我已经在我的项目中间开始使用 Git,前两次提交只是一些初始设置(.gitignore 和 .gitattributes),第三次提交M2添加了 SVN 主干的内容:

我在一个名为svn的分支中导入了 SVN 历史记录,其中M1是 SVN 主干(内容与M2相同,.gitignore 和 .gitattributes 除外):

问:合并两个分支的最佳方法是什么?

我可以将M1M2合并到M3中,然后变基,但我不知道如何删除I1I2提交以及是否可以安全地删除M3提交(我找到了一些保留合并提交的建议,但是在这种情况下M3不再需要了)。

另一种方法是手工挑选N .. Z提交到svn分支,但我想避免这种方法。

最优雅的解决方案是将N .. Z引入的更改重新设置在svn分支之上,但我还没有找到没有共同祖先的两个分支所需的语法。

0 投票
1 回答
232 浏览

svn - SVN 到 git ... 现在 git 到 SVN。那么多冲突

免责声明:如果我一开始就知道,事情会更简单git-svn

我在 SVN 中有一个庞大的代码库,并且粗略地将它放在 git 中。没有快速有效的分支,工作生活非常痛苦,所以这一切都是匆忙完成的。我的过程是:

现在我完成了我的小分支项目。我能够在一个干净的分支中“灭火”并在其他分支上进行开发。太好了。我的分支现在都合并为一个,我准备好将这段代码重新放入 SVN。

我现在已经做了一些工作git-svn,已经设置并获取了 svn repo。但这是我能做到的。

假设我的 git 分支是“master”,而我的 git-svn repo 是“svnrepo”:

失败并引发大量合并冲突和“索引中已存在”错误。

以完全相同的方式失败。

如何保存 git 历史并将此代码返回 SVN?

0 投票
1 回答
4316 浏览

svn - svn 变基和历史丢失

我们目前有2个分店:

current_version是所有开发人员当前工作的分支。

我们开始下一个版本并从 current_version 的某个点创建next_version分支,而 current_version 的工作仍在继续。在 next_version 我们进行一些开发,在接下来的几个月中,该分支将成为我们的主要分支,所有开发都将在这里完成。

由于 current_branch 有开发,我们定期(比如每 2 周一次)考虑重新设置 next_version。这是为了使两个分支保持同步,因此当所有开发人员最终将放弃 current_branch 并移至 next_release 时,next_release 将包含 current_branch 的所有集成和测试的功能。

问题是变基。实际上,变基是将 current_branch 的最新提交合并到 next_version。因此,如果我在 next_release 中检查已提交文件的历史记录,我将看到的只是合并提交,而不是 current_version 的历史记录(提交/作者/注释)。

我错过了什么吗?

0 投票
2 回答
2887 浏览

git - 重新定位相关主题分支

我在 git 中使用了很多本地主题分支,有时最终会导致主题分支之间的依赖关系导致 rebase 问题。例如,具有如下结构:

如果更改并且我在masterrebase 时遇到(并解决)冲突featureA,那么之后 rebase to 会触发相同的冲突(有时也会触发新的冲突),因为它会尝试重新应用分支中的补丁。假设如果选择了 和 之间的实际补丁将干净地应用,有没有办法在这种情况下进行变基,其效果与选择 和 之间的所有提交大致相同?featureBfeatureAfeatureAfeatureAfeatureBfeatureAfeatureB

0 投票
1 回答
363 浏览

git - 为什么我会与 git rebase -p -i 发生冲突?

我正在使用

并将单个提交及时向后移动到 SHA1 之后。提交包含一个 WAV 文件,所以这不可能破坏我的代码。

看似不相关的文件在历史后期的冲突中弹出。在这种情况下,为什么我会在变基期间遇到这些冲突?-p 还不足以保持与历史其他部分的关系完整吗?有一些关于变基的事情我在这里没有完全理解......

0 投票
20 回答
335208 浏览

git - 如何将所有 git 提交压缩为一个?

您如何将整个存储库压缩到第一次提交?

我可以重新提交到第一次提交,但这会给我留下 2 次提交。有没有办法在第一个提交之前引用提交?