草庐IT

rebase-merge

全部标签

Git 在两个文件夹之间 merge ,而不是分支

假设以下场景:我有一个git项目,它有一个名为project的目录。在这个目录中,我做了一些promise。然后,使用cp-r我将这个目录复制到一个名为project-with-feature-b的目录,即我手动创建了一个分支。现在我想merge这两个文件夹,就好像它们是两个分支一样,有没有办法使用git来做到这一点?更具体地针对我的问题。我有一个svn存储库,我正在使用git-svn工具来克隆它。我不能使用-T/-b/-t选项,但我想进行merge。 最佳答案 这个问题很老,我最近才加入。我用的是ubuntu,用meld解决mer

git - 在 SVN 中不起作用的 git 的具体示例 merge

我正在寻找可以在git中运行但会导致SVN冲突的具体示例merge。除此之外,还有您从未尝试过的困难/痛苦的SVNmerge示例Git也可以。关于我的问题,我主要可以确定四类merge:bigbangmerges重命名/移动相关merge在两个分支中创建目录/相同的文件crisscrossmerges我是否遗漏了这里的任何场景?找到1-3的样本很简单(在评论中找到2的样本,3作为我的答案的一部分,而1几乎是任何rebase)。有没有人有示例(这看起来不像学术)一个成功的交叉merge,但在SVN中会失败? 最佳答案 当然值得一提的是

git - 在 SVN 中不起作用的 git 的具体示例 merge

我正在寻找可以在git中运行但会导致SVN冲突的具体示例merge。除此之外,还有您从未尝试过的困难/痛苦的SVNmerge示例Git也可以。关于我的问题,我主要可以确定四类merge:bigbangmerges重命名/移动相关merge在两个分支中创建目录/相同的文件crisscrossmerges我是否遗漏了这里的任何场景?找到1-3的样本很简单(在评论中找到2的样本,3作为我的答案的一部分,而1几乎是任何rebase)。有没有人有示例(这看起来不像学术)一个成功的交叉merge,但在SVN中会失败? 最佳答案 当然值得一提的是

git - 在没有交互式 rebase 的情况下压缩历史中间的两个 Git 提交

我正在将旧的SVN存储库转换为Git,其中包括尝试在所有正确的位置获取所有分支/标签。那部分进展顺利,但有时我想在我的脚本中添加一个历史提交,稍后我想在下一次提交时压缩。问题是我不是一个一个地抓取提交,而是作为一个大组抓取,所以我无法在将它们从SVN存储库中pull出时压缩它们。最后,我的存储库如下所示:*(branch_2,HEAD)commit5*commit4*commit3*SQUASHME!*(branch_1)commit2*commit1我希望能够使用SQUASHME!压缩commit3,这对于交互式rebase来说显然很容易,但在脚本中更具挑战性。我似乎遇到的主要问题是

git - 在没有交互式 rebase 的情况下压缩历史中间的两个 Git 提交

我正在将旧的SVN存储库转换为Git,其中包括尝试在所有正确的位置获取所有分支/标签。那部分进展顺利,但有时我想在我的脚本中添加一个历史提交,稍后我想在下一次提交时压缩。问题是我不是一个一个地抓取提交,而是作为一个大组抓取,所以我无法在将它们从SVN存储库中pull出时压缩它们。最后,我的存储库如下所示:*(branch_2,HEAD)commit5*commit4*commit3*SQUASHME!*(branch_1)commit2*commit1我希望能够使用SQUASHME!压缩commit3,这对于交互式rebase来说显然很容易,但在脚本中更具挑战性。我似乎遇到的主要问题是

git - rebase merge 提交

假设我的Git存储库最初有两个分支:Foo和Bar。...─Foo...─Bar我创建了第三个分支FooBar,我在其中提交了其他两个分支的merge。...─Foo──┐FooBar...─Bar──┘FooBar现在是Foo和Bar之前的一次提交。接下来,我做了更多工作,仅在Foo上提交了几次。...──A───┬──B──C──D──FooFooBar...─Bar──┘问题是:由于分支FooBar的第一个父级不再是Foo,我能否将分支FooBar中的merge提交rebase以再次将Foo和Bar作为其两个父级?换句话说,我可以将Foo中的开发连同未更改的Bar一起merge到

git - rebase merge 提交

假设我的Git存储库最初有两个分支:Foo和Bar。...─Foo...─Bar我创建了第三个分支FooBar,我在其中提交了其他两个分支的merge。...─Foo──┐FooBar...─Bar──┘FooBar现在是Foo和Bar之前的一次提交。接下来,我做了更多工作,仅在Foo上提交了几次。...──A───┬──B──C──D──FooFooBar...─Bar──┘问题是:由于分支FooBar的第一个父级不再是Foo,我能否将分支FooBar中的merge提交rebase以再次将Foo和Bar作为其两个父级?换句话说,我可以将Foo中的开发连同未更改的Bar一起merge到

Git帮助理解 merge 基础冲突

我在未修改的文件上遇到冲突。merge时更改一行的文件发生冲突。我开始了解可能发生的事情,但仍然无法解决问题。这是分支结构。大师当前_迭代mapr_autoinitMaster已经很老了,并且已经有很长一段时间没有从current_iteration中进行更改了。然而,master通过将其他base直接重设到master上,直接应用了更改。所以在技术上master和current_iteration有分歧。我们一直对current_iteration进行分支和标记。我看到的问题是,当我从current_iterationmerge回我的分支时。根据对current_iteration的

Git帮助理解 merge 基础冲突

我在未修改的文件上遇到冲突。merge时更改一行的文件发生冲突。我开始了解可能发生的事情,但仍然无法解决问题。这是分支结构。大师当前_迭代mapr_autoinitMaster已经很老了,并且已经有很长一段时间没有从current_iteration中进行更改了。然而,master通过将其他base直接重设到master上,直接应用了更改。所以在技术上master和current_iteration有分歧。我们一直对current_iteration进行分支和标记。我看到的问题是,当我从current_iterationmerge回我的分支时。根据对current_iteration的

git - 在原始分支中压缩提交后如何 rebase ?

我有A--B--Cmaster\Dbranch0然后我将B和C压缩成B'。我如何rebasebranch0使其看起来像这样:A--B'master\Dbranch0 最佳答案 使用--ontogitrebase的参数,它改变了git重放工作的基线。gitcheckoutbranch0在这种状态下,您应该仍然在git历史记录中看到C。gitrebase--ontoB'C这转化为:获取自提交C以来我当前分支中的所有提交(在您的情况下只是D)并在B'您还可以使用可选的一次执行checkout和rebase的参数:gitrebase--on