如何将项目同时提交给TFS和SVN?

如何将项目同时提交给TFS和SVN?,svn,tfs,Svn,Tfs,您可能会问,为什么我需要将一个项目同时提交给这两者 在我们公司,我们建立了一个系统来备份所有项目。为此,我们使用了SVN。现在我们有了一个客户机,它正在使用TFS,并且项目被提交到他们的服务器。我们希望在我们的系统中保留代码的备份,我们希望使用SVN服务器来实现这一点。我们不想使用迁移工具 所以我计划在VisualStudio项目中使用TFS,并开发一个AddIn/插件来提交给SVN服务器。但是,这一步骤并没有取得成效。无法从加载项调用可以提交到SVN的DLL(我使用了SharpSVN)。现在,

您可能会问,为什么我需要将一个项目同时提交给这两者

在我们公司,我们建立了一个系统来备份所有项目。为此,我们使用了SVN。现在我们有了一个客户机,它正在使用TFS,并且项目被提交到他们的服务器。我们希望在我们的系统中保留代码的备份,我们希望使用SVN服务器来实现这一点。我们不想使用迁移工具

所以我计划在VisualStudio项目中使用TFS,并开发一个AddIn/插件来提交给SVN服务器。但是,这一步骤并没有取得成效。无法从加载项调用可以提交到SVN的DLL(我使用了SharpSVN)。现在,我尝试通过代码本身,使用System.Diagnostics.Process调用SVN命令。它也遇到了一些问题


我想就如何进行提出一些建议。我应该使用AddIn还是可以通过任何其他方式获得所需的结果?或者我们应该手动执行此操作,例如,在一天结束时复制代码并将其提交给TFS和SVN?

由于您在所有其他项目中都使用SVN,我个人也会在这个项目中使用它

当客户端使用TFS时,您可以在SVN服务器上使用post commit hook脚本,该脚本将特定项目上的更改复制到其TFS服务器上


您甚至可以在代码的“内部”SVN分支中工作,只复制合并到“已发布”分支(例如,可以是主干)的更改。

由于您在所有其他项目中使用SVN,我个人也会在这个项目中使用它

当客户端使用TFS时,您可以在SVN服务器上使用post commit hook脚本,该脚本将特定项目上的更改复制到其TFS服务器上


您甚至可以在代码的“内部”SVN分支中工作,只复制合并到“已发布”分支(例如主干)的更改。

Ok。谢谢你@Yannick Blondau。让我调查一下。我试过提交后。我喜欢这样做。但现在我遇到了另一个问题。我正在使用VisualSVN服务器。因此,当我提交一个文件时,cmd操作不会被执行。如果我用#bh,它返回一个错误。在提交后钩子中,您只需调用将您的更改提交给TFS的命令,然后使用
退出0
…这是VisualSVN服务器的权限问题。我照这里说的做了:它工作得很好。我可以导出SVN代码并执行其他操作。谢谢你@Yannick blondauok。谢谢你@Yannick Blondau。让我调查一下。我试过提交后。我喜欢这样做。但现在我遇到了另一个问题。我正在使用VisualSVN服务器。因此,当我提交一个文件时,cmd操作不会被执行。如果我用#bh,它返回一个错误。在提交后钩子中,您只需调用将您的更改提交给TFS的命令,然后使用
退出0
…这是VisualSVN服务器的权限问题。我照这里说的做了:它工作得很好。我可以导出SVN代码并执行其他操作。谢谢你@Yannick Blondau