2012-09-17 49 views
6

我们计划转移到TFS。虽然我讨厌它,但我们必须以各种理由去做。将代码从mercurial移动到TFS

  1. 我们有dev,staging和live分支。我们是否将每个分支的源文件作为单独的文件夹移动到TFS,并稍后将其转换为分支?

  2. 是否有可能沿袭历史?

  3. 有没有可以做到的工具或脚本?

回答

5

我一直没有找到一种方法直接从Mercurial转换到TFS。看起来最好的办法是将你的Mercurial仓库转换成Git仓库,并使用git-tfs将这些更改推送到TFS。

我不熟悉使用Git或TFS所以你必须做更多的研究,以找出确切的步骤,但这里是我怎么想,我会去了解它:

  1. 转换您Mercurial库到Git仓库(也许this将帮助)
  2. 创建空的TFS仓库
  3. 克隆使用this页面为指导
  4. 使用git您转换水银Git仓库推到TFS Git仓库的TFS库
  5. 使用git-TFS对这些变化推到TFS

我不知道这是否会复制所有的历史了,或者如果你只是有一个检查与代码的最终副本。

+2

如果您需要在Windows以外的环境中执行此操作,Microsoft已经发布了一个名为git-tf的跨平台工具,它类似于git-tfs。你可以在这里找到:http://go.microsoft.com/fwlink/?LinkId=261658 –

+0

这将是一个好的开始。谢谢。 – user460025

+0

@ user460025知道这是否引入了最新版本或整个历史记录会很有用。如果它只是最新版本,我认为遵循这个过程是不值得的,为什么不从最新版本中获取最新版本,然后将其检入到tfs中? – Mick