如何同步两个 Subversion 存储库?

2024-01-24

我公司有一家子公司,互联网连接速度很慢。我们的开发人员在与我们的中央交互时遇到了麻烦颠覆 http://en.wikipedia.org/wiki/Subversion_%28software%29服务器。是否可以为它们配置从属/镜像?他们将与服务器进行本地交互,所有提交都会自动同步到主服务器。

这对于开发人员来说应该尽可能透明。可用性是必须的。

请不要建议更改我们的版本控制系统。


这是可能的,但不一定简单:您试图解决的问题非常接近于建立分布式开发环境,而这并不是 SVN 的设计目的。

SVN-镜像方式

您可以使用svn mirror按照 SVN 书籍文档中的说明创建一个只读您的主存储库的镜像。您的开发人员每个人都与距离他们最近的镜子进行交互。但是,从属存储库的用户必须使用

svn switch --relocate master_url

在他们可以提交之前,他们必须记住一旦完成就重新定位回奴隶。如果您使用命令行客户端,则可以使用存储库周围的包装脚本来自动修改 SVN 上的命令。请记住,快速的重定位操作会增加一些开销。 (并小心复制存储库 uuid - 请参阅SVN 文档 http://svnbook.red-bean.com/en/1.5/svn.reposadmin.maint.html#svn.reposadmin.maint.replication.)

[编辑 - 检查乌龟SVN http://en.wikipedia.org/wiki/TortoiseSVN文档看来你可以拥有 TortoiseSVN客户端执行钩子脚本 http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug-settings.html#tsvn-dug-settings-hooks。此时您也许可以创建提交前/提交后脚本。或者尝试看看是否可以使用TortoiseSVN自动化接口 http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-automation.html去做吧]。

SVK之道

svk http://svk.bestpractical.com/view/HomePage是一组 Perl 脚本,用于模拟 SVN 上的分布式镜像服务。您可以进行设置,以便多个开发人员共享本地分支(镜像)。那么对于开发者来说基本的使用方式将是完全透明的。您将必须使用 svk 客户端进行樱桃采摘、合并和星形合并。如果您能够理解分布式概念,那么这是可行的。

git-svn 方式

虽然我自己从未使用过,但您也可以让远程开发人员在本地使用 git 并使用git-svn http://git-scm.com/docs/git-svn同步网关。

最后的话

这完全取决于您的开发环境和您所需的集成级别。取决于您的 IDE(如果您可以更改SCM http://en.wikipedia.org/wiki/Source_Code_Management)您可能想看看其他完全分布式的 SCM(想想水星 http://en.wikipedia.org/wiki/Mercurial/Bazaar http://en.wikipedia.org/wiki/Bazaar_%28software%29/Git http://en.wikipedia.org/wiki/Git_%28software%29/...),它支持开箱即用的分布式开发。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何同步两个 Subversion 存储库? 的相关文章

  • 如何确保使用 Microsoft Sync Framework 同步成功?

    我正在使用微软同步框架 https msdn microsoft com en us sync bb736753 aspx同步两个 Microsoft SQL Server 上的表 我创建了一个测试应用程序 它每秒在远程服务器上的表中生成一
  • 进程间并发文件写入

    我需要将不同进程的日志数据写入单个文件 我正在使用 Windows Mutex 它需要公共语言运行时支持 Mutex m gcnew Mutex false MyMutex m gt WaitOne File Open and Write
  • Git:如何使外部存储库和嵌入式存储库作为通用/独立存储库工作?

    我有一个大项目 比方说A repo 其中有一个子文件夹来自B repo 当我提交时 我会遇到如下警告A repo warning adding embedded git repository extractor annotator serv
  • 有谁知道类似于 SVN Time-Lapse View 的 Git 工具 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 SVN Time Lapse View 是一个跨平台查看器 可以下载文件的所有修订版本 并允许您通过拖
  • 什么时候可以在 Java 中使用 Thead.stop() ?

    Thread stop 的 Java 文档听起来好像如果您调用 Thread stop 世界就会终结 已弃用 这种方法本质上是不安全的 停止线程 Thread stop 导致它解锁所有已锁定的监视器 作为未经检查的 ThreadDeath
  • Apache ZooKeeper:写入如何工作

    Apache ZooKeeper 是一种针对小对象的高可用数据存储 ZooKeeper 集群由一些节点组成 这些节点都将整个数据集保存在内存中 该数据集被称为 始终一致 因此每个节点每次都有相同的数据 根据文档和博客文章 http www
  • TortoiseSVN 不要求身份验证?

    我已经在conf文件中设置了一个新的SVN存储库 运行SVNServe anon access none SVNServe 忠实地正确地做到了这一点 但是当我尝试使用 TortoiseSVN 浏览存储库时 它只是说不允许访问 它不应该要求我
  • SVN 外部未在 TortoiseSVN 的存储库浏览器中正确显示并在本地标记为非版本化

    I work on a work project that s scattered across a myriad of source projects and SVN locations To make life easier I fol
  • 如何避免服务器端和客户端的重复验证?

    如何避免服务器端和客户端的重复验证 是否有一个网络编程平台可以从另一个生成一个 这样我就不必保持两者同步 有些框架可以从服务器端验证配置生成客户端验证 现在我不知道你使用什么语言或框架 但也许这篇文章可以有所帮助 http www emad
  • 在java中实现你自己的阻塞队列

    我知道这个问题之前已经被问过并回答过很多次了 但我只是无法根据互联网上找到的示例找出窍门 例如this http tutorials jenkov com java concurrency blocking queues html or t
  • 如何保持 Subversion 和远程服务器(通过 FTP)同步?

    我们很难保持 Subversion 和 FTP 同步 有时我们忘记提交更改并只是将它们推送到 Web 服务器 我们的 svn 文件夹分散在整个 Web 服务器中 有些东西存在于一个地方而不存在于另一个地方 等等 今天我想花点时间解决这个问题
  • 将构建日期放入“关于”框中

    我有一个带有 关于 框的 C WinForms 应用程序 我使用以下方法将版本号放入 关于 框中 FileVersionInfo GetVersionInfo Assembly GetExecutingAssembly Location F
  • 如何使用git-svn切换svn分支?

    复制 如何让 git svn 使用特定的 svn 分支作为远程存储库 https stackoverflow com questions 192736 how do i make git svn use a particular svn b
  • 如何恢复 CVS 中的重大更改?

    我的一位同事完全搞乱了我们主 CVS 存储库中目录的内容 我需要将整个模块恢复到去年年底的状态 请问执行此操作的 CVS 命令是什么 他添加和删除了数百个文件 因此简单的 从旧签出和提交中复制文件 是不够的 我有 RTFM 和 STFW 我
  • 在 subversion 中看到许多提交的组合差异?

    我被要求审查 SVN 版本号 123 178 199 245 和 288 中所做的更改 这些都是与特定功能相关的提交 解决这个问题的合理方法是什么 我想我真的想以某种方式查看收集的差异 但我愿意接受建议 我们现在正在修订 400 编辑 我想
  • 使用 Maven 外部化 SCM 凭证

    有没有一种方法可以外部化我的 SCM 凭据 以便它们不会存储在项目的 POM 中 问题是 如果它们包含在项目的 POM 中 那么在部署项目时它们将对所有人可见 对于某些 SCM 提供商 您可以在
  • 如何在 Perforce 树中查找未跟踪的文件? (svn状态的模拟)

    有人有脚本或别名来查找 Perforce 树中未跟踪 实际上 未添加 的文件吗 编辑 我更新了对此已接受的答案 因为看起来 P4V 在 2009 年 1 月的版本中添加了对此的支持 EDIT 请用p4 status现在 不再需要跳圈了 参见
  • 没有分支的 svn 存储库签出

    我必须检查一个有 8 个分支的存储库 我不会下载每个分支大小 400MB 只需检查文件夹结构和主干即可 repo trunk repo tags
  • PowerShell 中的 SVN 输出编码

    我正在尝试在 PowerShell 脚本内的字符串中捕获 SVN 日志 在命令行上 输出的编码是正确的 但是当我将其捕获到字符串中时 它就不是正确的 PS C sandbox gt svn log r1804 https myserver
  • 本地提交推送到中央服务器

    在工作中 我们使用 perforce 并被鼓励定期对其进行承诺 我对此很满意 然而 我想运行像 Mercurial 这样的东西 这样我就可以在本地提交正在进行的工作并且不一定编译 运行的东西 然后从中定期提交到中央 perforce 服务器

随机推荐

  • UIImage 的 jpg 或 png ——哪个更有效?

    我从相机胶卷中抓取一张图像 然后使用它一段时间 并将其以 PNG 格式保存到 iPhone 的磁盘上 我遇到了奇怪的崩溃 可能是由于内存不足 如果我将其保存为 PNG 或 JPG 假设我选择注释来降低 JPG 情况下的质量 会有什么不同吗
  • Amazon S3 上的 Presto

    我正在尝试在 Amazon S3 存储桶上使用 Presto 但在 Internet 上没有找到太多相关信息 我已经在微型实例上安装了 Presto 但我无法弄清楚如何连接到 S3 有一个桶 里面有文件 我有一个正在运行的 hive 元存储
  • 第一个计时器勾选后鼠标事件不起作用

    我正在使用 powershell 开发一个带有图形界面的小工具 我对这个问题感到疯狂 例如 我在表单上有一个标签 显示 ping 的 实时 状态 同时 如果单击标签 则会显示一条弹出消息 function GoogleStatus Labe
  • 在应用程序中存储短音频文件/流式传输

    我计划制作一个利用 Parse com 后端进行用户身份验证 帖子 关注者 等的应用程序 我希望用户能够将示例音乐文件上传到 Parse 或替代解决方案 然后能够流式传输或让其他人能够播放它 有人告诉我可以使用 PFFile 存储文件 但是
  • 公式不使用 EPPLUS 计算

    我想转让一个Datatable超越并计算总和 为此 我使用 epplus 这是我的代码 Sheet Cells A1 LoadFromDataTable dsExcel Tables 0 true TableStyles Medium9 S
  • 如何在intellij idea中启用从源滚动到外部库?

    我想查看外部库树中反编译类的位置 我怎样才能做到这一点 谢谢 找到了一种获取所显示的反编译类的包的方法 ctrl click在代码中的包上 java 文件中最上面的命令
  • 在 Gtk+ 中堆叠小部件

    Gtk 中有没有一种方法可以将一个小部件堆叠在另一个小部件之上 不包括 GtkFixed GtkFixed 不能很好地工作有两个原因 1 我需要 Z 顺序 2 我需要一个小部件来拉伸和填充提供的空间 我使用 Gtk Fixed 实际上是 g
  • Android 主屏幕小部件动画

    我正在考虑创建一个支持动画的小部件 最好是通过 android view animation 框架 或者通过在后台服务触发的代码中设置远程视图的属性 有没有人对这两种方法有任何经验 我正在尝试的是可行的 还是我正在走入死胡同 实际上可以为
  • MacOS 上的打包电子应用程序不会生成子节点进程

    我创建了一个电子应用程序 当在主进程中运行时 它将生成一个节点子进程 该子进程将提供一些 html 内容 app on ready gt check for port 80 const port 80 find port port then
  • 来自未完全填充的字符数组的字符串

    显然 下面的代码给出了一个相当奇怪的结果 char data new char 5 data 0 a data 1 b data 2 c out println new String data abc 有没有一种方法可以从字符数组创建字符串
  • Android上React Native Axios上传图片返回网络错误

    我尝试使用以下命令将一些数据 包括图像 上传到服务器Axios 它在 iOS 上完美运行 但在 Android 上 它返回Network Error const data new FormData data append tag tag M
  • Rails 收集 JSON 数据并将其渲染到 Highcharts 图表中

    我正在尝试将标签传递到 x 轴上的 Highcharts 柱形图 目前 图表的工作方式是渲染数据 但 x 轴标签显示 0 1 2 3 等 这是没有任何可渲染内容时的默认值 注释 控制器 def dashboard data Note get
  • 从服务帐户获取访问令牌刷新错误:Google API 中的 invalid_grant

    我正在关注这个例子 https code google com p google api python client source browse samples service account tasks py https code goo
  • javax.ws.rs.client.Client如何配置readTimeOut?

    从com sun jersey api client Client to javax ws rs client Client如何配置客户端 FROM import com sun jersey api client Client Clien
  • 反向滚动

    我很难找到我想要完成的任务的解决方案 我正在尝试使用 JS 或其他库 来实现它 以便当用户在鼠标滚轮上向下滚动时 页面滚动的方式与通常相反 基本上 我希望首先看到页面的底部 当用户滚动时 我希望屏幕的顶部进入视图 我能找到的唯一例子是右列h
  • 具有大图像尺寸的 UIImage - 内存问题 - 崩溃

    我想加载并显示图像 jpg png 具有大尺寸 例如1800x1200 或 2000x1800 宽 x 高 如果我在 UIImageView 中显示如此大尺寸的图像 1800x1200 或 2000x1800 它也会消耗大量内存 并且应用程
  • 即使在 Ajax 页面中显式等待后,Selenium 也无法找到元素

    我正在尝试自动更新 Web 应用程序中的字段 因此登录后url不会改变 到目前为止 这是我的代码 from selenium import webdriver from selenium webdriver common keys impo
  • C++ 中的音频操作

    我希望这是发布此内容的正确位置 并且有人可以提供帮助 我是一名音乐技术学生 最近开始学习 C 因为了解一门编程语言对我的职业生涯有很大帮助 尤其是这种语言 因为它用于视频游戏行业 无论如何 进入主题 我想要创建一个程序 用 C 编写 让用户
  • 在 Python 中检查非常大的数字的素性

    检查给定的大数是否为素数的最快方法是什么 我说的是大小约为 10 32 的数字 我已经尝试过该算法 MarcoBonelli 的精彩回答 https stackoverflow com a 27946768 1195131这是 from m
  • 如何同步两个 Subversion 存储库?

    我公司有一家子公司 互联网连接速度很慢 我们的开发人员在与我们的中央交互时遇到了麻烦颠覆 http en wikipedia org wiki Subversion 28software 29服务器 是否可以为它们配置从属 镜像 他们将与服