在笔记本电脑上脱机运行Subversion存储库,然后在返回时与SVN服务器同步

在笔记本电脑上脱机运行Subversion存储库,然后在返回时与SVN服务器同步,svn,Svn,我将在没有网络访问的情况下旅行(即无法访问我们数据中心的subversion服务器)。我已将最新版本的subversion存储库签出到我的笔记本电脑上,我将在不在办公室时处理该项目。我想: 当我旅行时,有一个subversion服务器来检查东西,做恢复,有历史记录等等。显然,这需要安装在笔记本电脑上。如有必要,我可以获得svn回购协议的备份 一旦我再次访问,请检查所有更改(希望还有历史记录) 我很乐意在笔记本电脑上使用任何技术(svn、git、hg),但最终所有的服务器都是subversion

我将在没有网络访问的情况下旅行(即无法访问我们数据中心的subversion服务器)。我已将最新版本的subversion存储库签出到我的笔记本电脑上,我将在不在办公室时处理该项目。我想:

  • 当我旅行时,有一个subversion服务器来检查东西,做恢复,有历史记录等等。显然,这需要安装在笔记本电脑上。如有必要,我可以获得svn回购协议的备份

  • 一旦我再次访问,请检查所有更改(希望还有历史记录)

  • 我很乐意在笔记本电脑上使用任何技术(svn、git、hg),但最终所有的服务器都是subversion

    我已经阅读了一些其他(旧的)帖子,包括下面的帖子,但不清楚是否可以将历史记录/所有单个提交/版本添加回数据中心的服务器:


    我会选择GIT-SVN。您可以同步远程SVN存储库中的代码,在一个或多个分支中本地使用它们,在分支之间本地合并,并且当您有连接时,您可以将选定的提交(按您所需的块)推送到SVN存储库


    缺点是你也必须学习git,而且你必须选择要同步的内容,同步不是自动的。另一方面,您拥有本地灵活性和强大功能,这是单靠svn无法实现的。

    我不认为您想要实现的目标是可能的,因为如果许多人拥有存储库的本地副本,每个副本都会根据自己的修改而变化。修补程序/提交历史记录将不同。历史不一定是可以和解的,就像某些地区有时会发生冲突一样

    我从未听说过有一种工具允许在subversion存储库实例之间进行这种协调。当然,您可以通过补丁保留每个更改的副本,并在再次联机时应用它们。但这是乏味、无聊和痛苦的

    对于这些脱机情况,我的解决方法是从服务器创建10个签出,并针对我正在解决的每个问题(或问题集)处理每个问题。然后,当我重新联机时,我会逐一将它们签入,并使用更新功能“同步”它们。这并不完美,但我发现这是一个很好的解决办法


    希望这能有所帮助。

    在笔记本电脑上安装本地svn服务器,并将资源保存在那里。它不会产生繁重的工作负载。外出时,将更改提交到本地服务器。联机后,获取本地存储库的转储并将其加载到服务器。然后您可以将更改合并到主线中


    p、 它不太方便,但在服务器无法访问时保留您的更改

    +1,这不仅是OP所要求的,而且为更好的VCS提供了很好的途径;)