【发布时间】:2008-12-16 12:46:44
【问题描述】:
您能推荐任何将源(带有历史记录)从 TFS 迁移到 SVN 的工具吗?
【问题讨论】:
您能推荐任何将源(带有历史记录)从 TFS 迁移到 SVN 的工具吗?
【问题讨论】:
你看过tfs2svn吗?
tfs2svn 是一个 Windows 应用程序 转换 Team Foundation Server (TFS) 存储库到 Subversion (SVN)存储库,保留 历史、分支和提交 信息。
【讨论】:
我们正在将 TFS 2010 集合迁移到 svn。为了让它对我们有用,我需要下载并修改 TFS2SVN 的源代码,以便它理解我们制作的集合。
目前我只是对这些值进行了硬编码,因为我们只会使用它两次。我们修改了 tfs2svn\trunk\Colyar.SourceControl.Tfs2Svn\Tfs2SvnConverter.cs 如下
public Tfs2SvnConverter(string tfsPath, string svnPath, bool createSvnFileRepository, int fromChangeset, string workingCopyPath, string svnBinFolder, bool doInitialCheckout, string tfsUsername, string tfsPassword, string tfsDomain)
{
ParsePaths(tfsPath, svnPath);
this._tfsServer = "http://<tfs domain>:8080/tfs/<team project collection name>";
this._tfsRepository = "<remote source location>"; // "$/<team project name>/..."
//this._tfsExporter = new TfsExporter(this._tfsServer, this._tfsRepository, workingCopyPath, fromChangeset, tfsUsername, tfsPassword, tfsDomain);
TfsClient.Provider.Connect(this._tfsServer, this._tfsRepository, workingCopyPath, fromChangeset, tfsUsername, tfsPassword, tfsDomain);
this._svnImporter = new SvnImporter(this._svnRepository, workingCopyPath, svnBinFolder);
_createSvnFileRepository = createSvnFileRepository;
_doInitialCheckout = doInitialCheckout;
_workingCopyPath = workingCopyPath;
HookupTfsExporterEventHandlers();
}
【讨论】: