我正在开发一个库和几个使用它的项目,我发现自己经常在项目的同时修改库(例如,向库中添加一个函数并立即在项目中使用它)。
因此,该项目将不再使用以前版本的库进行编译。

因此,如果我需要回滚更改或测试项目的先前版本,我想知道在签入时使用了哪个版本的库。
我想我可以手动执行此操作(只需在日志文件中编写版本号),但如果这可能会自动发生,那就太棒了。

===============>>#1 票数:3

可能适合您的选项是使用对库的svn:external引用。 标记项目时,您可以执行以下两项操作之一:

  • 更新svn:external以引用库的特定修订版; 要么
  • 更新svn:external以引用您在库上创建的新标记。

由于svn:external元数据将成为主项目提交历史的一部分,因此您始终可以在主项目上获取标记,并且它将引用该库的正确版本。 我们做到了,效果很好。 当您想要冻结您为准备发布而依赖的库代码版本时,它也会派上用场。

===============>>#2 票数:2

我想如果我要这样做,我会使用标签。 编写一个脚本会非常容易,每次升级库并在项目中使用它时,都会使用相同的ID标记两个存储库。 然后,如果您需要回滚到以前的版本,只需看看它最新的标记是什么,然后将库回滚到该版本。

更新:对不起,我已经在Mercurial的土地上呆了一段时间,忘记了颠覆不直接支持标记。 假设您使用通常的subversion目录结构

/
  /trunk
  /tags
  /branches

你只需要跑步

svn copy trunk/ tags/TagName

在两个repos上,具有相同的标签名称。 Subversion非常适合智能副本,因此您无需担心磁盘空间。

===============>>#3 票数:2

您可能会发现活塞提供了解决方案

它主要用于在rails插件上导入ruby,但我不明白为什么它不适用于任何subversion存储库。

基本上它的作用是:

  • svn导出远程路径的最新版本
  • 将这些文件提交到本地svn,就好像它们是本地文件一样
  • 以svn属性的形式附加有关远程路径和修订的元数据

这意味着您可以保留对特定版本的远程仓库的引用,而无需像svn外部那样不断更新它。

如果要将库的本地副本更新到最新的远程版本,只需piston update

您还应该能够通过查看元数据来查看更新历史记录 - svn属性的版本化就像文件和其他所有内容一样

===============>>#4 票数:0

一种选择是使用单个subversion存储库和签入更改同时影响库和项目。 这样你就知道你所使用的项目的任何修订都需要相同的库修订版。

  ask by Jesse Beder translate from so

未解决问题?本站智能推荐:

4回复

将代码与两个Subversion存储库同步

在这里搜索时,我发现已经问了这个问题,但我认为我的情况更糟!-( 我是Internet存储库开发的新手。 我正在阅读的书包含一个有趣的示例项目-ASP.Net中的社交网络。 作者将代码作为CodePlex 项目 。 我试图通过VisualSVN(Subversion)“获取”版本,但
2回复

将代码与两个subversion存储库同步

先介绍一下背景: 我正在使用远程SVN存储库中的“基本”代码,而不是我的控制。 代码没有标记(但),所以我总是需要跟上主干。 出于多种原因(最重要的是我们对代码的本地扩展具有“利基”性质,并且旨在解决使用代码的项目的特定问题)我无法使用远程存储库对我在本地制作的任何修改进行版
7回复

如何同步两个Subversion存储库?

我的公司有一个互联网连接缓慢的子公司。 我们的开发人员与我们的中央Subversion服务器进行交互。 是否可以为它们配置从站/镜像? 它们将与服务器进行本地交互,并且所有提交都将自动同步到主服务器。 这应该对开发人员尽可能透明地起作用。 可用性是必须的。 请不要改变我们的版
1回复

颠覆同步存储库的一部分

我们有一个内部托管的存储库,我们想同步在线存储库中的某些项目。 通过查看svnsync命令,似乎同步适用于所有存储库。 有没有一种方法可以将同步限制到某些目录?
1回复

使Subversion存储库保持同步以迁移到新环境的最快方法是什么?

我正在尝试将大型Subversion存储库从Subversion 1.6的系统迁移到Subversion 1.7的系统。 进行最终同步时,我可以停机并仅使用rsync,但是我没有选择它,因为我希望使用1.7版创建/升级新的存储库。 因此,我选择使用svnsync,因为它可以在中断的地方继
1回复

Trac存储库同步

我刚刚将跟踪从0.11更新为0.12,因为可以浏览多个存储库。 在svn同步自动工作之前,但是现在我必须在管理面板上并键入repository resync *命令,有什么方法可以自动执行此操作吗?
6回复

如何在开发代码时使用Internet Subversion存储库?

我使用CodePlex的Subversion项目将自己描绘成一个问题 - 为此我在这里寻求帮助。 我有一个本地存储库,CodePlex有它的项目的Internet存储库,这两个不混合:-(。 但我亲爱的离去的父亲曾经告诉我,一个聪明的人和一个聪明人之间的区别在于智者不会进入陷阱,一个聪明
3回复

多个存储库之间的SVN同步

我们正在使用SVN,我们有现场和离岸团队。 SVN存储库目前位于岸上,这意味着从海外到SVN的连接速度非常慢。 我们也希望在离岸设置和SVN。 我们需要两个SVN存储库同步。 最好的做法是什么,需要任何第三方产品? 谢谢!
1回复

与匿名用户同步SVN存储库

我需要同步一个svn存储库,我知道我可以使用svnsync来做到这一点,但是问题是我需要与另一个用户对从属存储库进行提交,因此主存储库上的svn信息不包含在从属服务器中但能够使用svn log / diff检索从属存储库更改。 有没有办法做到这一点,或者我必须创建一个shell脚本来实现这
1回复

使用svnserve协议在两个SVN存储库之间同步

我们有两个使用svnserve的SVN存储库(不是Apache httpd),一个在岸上,另一个在岸上。 是否可以在两个存储库之间创建合理的同步? 可以具有主/从配置。 还是我们被迫转向更复杂的Apache服务器做事方式? 我问的原因是因为更改当前的基础结构会花费时间。