功能分支的Git Rebase或SVN重新集成?

功能分支的Git Rebase或SVN重新集成?,git,svn,version-control,rebase,branching-and-merging,Git,Svn,Version Control,Rebase,Branching And Merging,我们目前正在使用SVN,但正在考虑迁移到Git以支持我们的新工作流,这在很大程度上依赖于rebase 我们正在考虑一个开发工作流,其中每个单独的功能都在一个单独的分支上开发,然后在准备发布时合并到trunk/master中。分支合并回主干/主机后,将始终删除该分支 一个建议是使用git-rebase使特性分支与master中的更改保持最新(这样我们就可以在分支中准确地测试将发布的内容),并简化从branch->master的合并 我们正在考虑的另一种选择是使用svn merge使功能分支与主干中

我们目前正在使用SVN,但正在考虑迁移到Git以支持我们的新工作流,这在很大程度上依赖于rebase

我们正在考虑一个开发工作流,其中每个单独的功能都在一个单独的分支上开发,然后在准备发布时合并到trunk/master中。分支合并回主干/主机后,将始终删除该分支

一个建议是使用git-rebase使特性分支与master中的更改保持最新(这样我们就可以在分支中准确地测试将发布的内容),并简化从branch->master的合并

我们正在考虑的另一种选择是使用svn merge使功能分支与主干中的更改保持最新,然后使用svn merge--重新集成将功能分支合并回主干以供发布


每种方法的区别和潜在缺陷是什么?哪个更适合我们的工作流?

这是git中非常简单的工作流。几个开发人员使用您描述的一种或两种方法

就个人而言,我是一个粉丝,并且发现它真的很有用

您可以重新设置基址以使主分支保持线性历史,这是正常的,但它确实有可能向刚开始使用git的人抛出一些主要循环。如果你不小心的话,重定基址会改变历史,并可能导致问题

Git合并(不是svn合并——您提到的重新整合)在Git中更简单一些,如果您刚刚开始的话。Git的合并策略是经过深思熟虑的,可以自动避免麻烦

如果我在feature branch上开发,然后将其合并到master中,我喜欢在master上运行
git merge--no ff feature
,创建合并提交,只是为了显式


由于您刚刚开始使用git,我会选择合并工作流。嗯,如果你来自svn背景,这会更直观。

这是git中非常简单的工作流。几个开发人员使用您描述的一种或两种方法

就个人而言,我是一个粉丝,并且发现它真的很有用

您可以重新设置基址以使主分支保持线性历史,这是正常的,但它确实有可能向刚开始使用git的人抛出一些主要循环。如果你不小心的话,重定基址会改变历史,并可能导致问题

Git合并(不是svn合并——您提到的重新整合)在Git中更简单一些,如果您刚刚开始的话。Git的合并策略是经过深思熟虑的,可以自动避免麻烦

如果我在feature branch上开发,然后将其合并到master中,我喜欢在master上运行
git merge--no ff feature
,创建合并提交,只是为了显式


由于您刚刚开始使用git,我会选择合并工作流。嗯,如果你来自svn背景,这会更直观。

你在使用git和svn吗?如果是这样的话,您是如何使用这两种方法的?我们目前正在使用svn,但正在决定在该工作流中使用git是否更有意义(问题已编辑)您是否使用git和svn?如果是这样的话,您是如何使用这两者的呢?我们目前正在使用svn,但正在决定是否将此工作流迁移到git更有意义(问题已编辑)