svn - SVN 外部标记流程

标签 svn tortoisesvn ankhsvn

我只有一个存储库。

假设我有跨项目共享的 LibraryX。

假设 ApplicationA(以及其他)使用 LibraryX 并将其作为外部引用。

在开发 ApplicationA 时,我也可能对 LibraryX 进行修改。

假设对 ApplicationA 和 LibraryX 都进行了更改,现在我正在发布。

请告诉我您是否同意/不同意以下流程,和/或告诉我您将采取哪些措施来改进它:

  • 创建 LibraryX 标签
  • 分支机构申请A
  • 更改分支ApplicationA上的外部以指向标记的LibraryX,也许还指向特定的修订版(以防将来有人意外提交该标记)
  • 创建分支ApplicationA的标签
  • 删除分支的ApplicationA

听起来合理吗?有更好的想法吗?想法?

最佳答案

我执行以下操作:

  • 我总是在特定版本中引用该库。如果库发生变化并且我希望在我的应用程序中进行更改,那么我会更新外部定义。
  • 在发布时,我创建应用程序的标签。我不需要采取额外的步骤,因为引用了该库的特定修订版。

一些附加评论:

  • 有时我不会引用库的特定版本(因为我太懒了),但我知道这些修订版将来将无法使用。如果您意识到这一点,您就可以做出这个决定。但是,在创建标签之前,我总是卡住库引用。
  • 有时我会创建一个分支而不是标签,这样我就可以修复一些错误,同时继续开发下一个版本。最终我为这个分支创建了一个标签并删除该分支。 (也许我创建了多个标签,但分支总是在最后被删除。)
  • 我删除分支是因为我仅将分支用作短期实体:功能分支或发布分支来稳定版本。我不需要保留分支,因为标签是我感兴趣的版本。
  • 如果我需要修复标签中的错误,那么我首先创建一个分支。修复错误并创建新标签(并删除分支)。
  • 如果需要在库中修复错误(尽管有点复杂),则同样适用:在分支中,您可以更新到最新的库(如果可能),或者创建引用版本的分支图书馆的。然后,您将外部更改为指向此分支,修复库中的错误,将外部定义卡住到库分支的最新版本,并为应用程序创建一个标签。我通常不会费心为库创建标签,但这也是可能的。不过,我确实删除了库分支:如果再次需要它,您可以根据已删除库分支的最后修订版创建一个新分支。

关于svn - SVN 外部标记流程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7663531/

相关文章:

linux - 带有 svn post-commit Hook 的 trac-admin 导致段错误

svn - 如何将区分大小写的 SVN 源代码分支 checkout 到不区分大小写的系统?

svn - 如何将以点 (.name) 开头的文件夹添加到 SVN 的全局忽略列表中?

visual-studio - 在 Visual Studio 中从 SVN 中删除文件非项目文件

visual-studio - AnkhSvn 的 VS 快捷方式显示更改

SVN authz,主干/分支上基于路径的身份验证

svn - 相当于 TFS 搁置的 Subversion 是什么?

windows - 没有 Cygwin 的 Windows 上的 Git?

svn - 删除 Google 代码上提交的测试文件夹/文件?

svn - AnkhSVN 客户端预提交 Hook