如何在Subversion中保存提交?

时间:2010-04-14 07:22:26

标签: svn

如果我不在线,我有时希望将一些更改打包到提交中,保存在工作副本中,并且在我重新联机后可以真正提交到存储库。如何使用Subversion(可以借助其他工具)。

5 个答案:

答案 0 :(得分:4)

您可以使用git-svn并建立一个与svn保持同步的本地git存储库。您可以在脱机工作时对git存储库进行本地提交,并在您重新联机时将更改传输到中央svn。

答案 1 :(得分:3)

如果您希望将某些更改批量添加到单一类型的提交中,我能想到的唯一选择是生成您已完成的所有内容的差异(TortoiseSVN可以选择执行此操作,或者你可以使用svn diff命令,如果你是命令行友好的),但这只能真正工作一次,除非你知道你将为每个批处理单独的文件。

过去我曾经做过几次这样的事情,当时我不想为一个非常具有实验性的功能创建一个全新的分支,但也不想将它检查到中央回购中。然后我可以与其他人共享该补丁文件,但它仍然是一种相对脆弱的方式,因为它只能保证应用于我生成它的修订版。

答案 2 :(得分:0)

嗯...如果您已经签出了代码的副本,那么您只需要处理该本地副本,然后当您重新联机时,即可提交更改。您的计算机仅检查其是否具有最新版本。或者我在这里错过了一些问题?

答案 3 :(得分:0)

尝试将GIT视为存储库控件。 GIT离线处理大量操作,这种方式非常快速可靠。然而GIT是完全不同于SVN的东西,所以你必须对此进行一些研究。但如果你经常离线工作,如果我是你,我肯定会在GIT掠夺:]

http://git-scm.com/

答案 4 :(得分:0)

SVN不支持此功能,本地离线提交本身。因此,您可以使用git-svn来扩展工作副本和分布式存储库,以使本地提交成为可能。

但是,您可以将提交保存为修补程序文件,例如: TortoiseSVN或简单地“svn diff”将每一步保存为补丁,它们将像迭代提交一样工作。

当重新联机时,您可以简单地应用一个接一个的补丁并提交每一步。

相关问题