从GIT迁移到TFS并保留检入时间戳

3

我试图使用以下命令将GIT存储库迁移到TFS Online:

git tf configure https://myusername.visualstudio.com/DefaultCollection $/NameOfTheProgram 
git tf checkin --deep --no-lock

它按照预期运行。我得到了所有带有TFS历史记录的文件。 但是有一个细节让我非常困扰。现在看起来好像所有文件都是今天检入的。当我浏览文���时,它让我感到困惑,我无法区分昨天更改的文件和多年未接触的文件之间的区别。

是否有一种方法可以从GIT迁移到TFS并保留最后检入的时间戳?

1个回答

4

TFS的签入总是在实际签入日期进行。技术上说,这是可能的,但它需要调整服务器注册表并从完全新的ProjectCollection开始,此外工具必须知道这一点,因为它需要使用不同的API来检入数据。

目前,Visual Studio Online没有提供此设置(尽管如果所有签入都按时间顺序进行,它将遵循API)。

作为替代方案,既然您已经在使用GIT,为什么不在VSO上使用Git存储库并将更改推送到其中。Git提交保留其原始时间戳,TFS只会将推送的日期更新为今天。提交日期保持不变。


我也可以访问本地TFS服务器。是否可以将迁移操作执行到该服务器,然后再将已迁移的TFS存储库移动到TFS在线? - magol
2
目前无法将集合导入到Visual Studio Online中。而且TFS到TFS的迁移也存在相同的时间戳问题。 - jessehouwing
1
非常感谢您向我解释这个问题。正如您所说,为什么我不在TFS下使用GIT呢?这是一个非常好的问题。我为什么没有想到呢? :-) - magol
我不知道在TFS下使用GIT是否是一个好主意,因为我发现它的合并功能是不可靠的。 - mamashare
@mamashare 它使用 Git 进行合并。所以我不明白它为什么比 Git 更可靠或不可靠。 - jessehouwing

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接