0

设想:

  • 创建了一个分支(可能添加了一些提交,在我的情况下没有)
  • 后来,在主干中,另一个开发人员推送了一个提交,这对于分支工作至关重要

从主干获取提交的最干净的工作流程是什么?

4

1 回答 1

1

您可以使用svn merge将更改从一个分支合并到另一个分支。这类似于git rebase命令:

$ svn co $REPO/branch/$branch/$project
$ cd $project
$ svn merge $REPO/trunk/$project
$ svn commit -m"Merging some change that was in trunk that the branch needs"

在 Subversion 的最新版本中,您不再需要该-reintegrate开关。

如果您知道要合并的确切版本。也就是说,您查看svn log并查看了您想要在主干上进行的更改,您可以指定仅合并该修订:

$ svn co $REPO/branch/$branch/$project
$ cd $project
$ svn merge -r$rev $REPO/trunk/$project
$ svn commit -m"Merging revision $rev into branch because the branch needs it"

这只会合并到trunk分支也需要的已签入的单个更改中。

有关更多信息,请使用该命令svn help merge并查看Subversion 在线手册

请记住,git它使用至少两个独立的存储库,因此rebase它们merge都是必需的,而svn只处理集中式存储库,因此只需要一个命令。

于 2013-05-27T17:35:26.587 回答