【问题标题】:Migrate from GIT to TFS and retain timestamp for check-in从 GIT 迁移到 TFS 并保留签入时间戳
【发布时间】:2014-01-21 03:34:06
【问题描述】:

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

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

它按原样工作。我在 TFS 中获得了所有具有历史记录的文件。 但是有一个细节让我很困扰。现在看起来今天所有文件都已签入。当我浏览文件时会感到困惑,我看不出我昨天更改的文件和我多年未接触过的文件之间的区别。

有没有办法从 GIT 迁移到 TFS 并保留上次签到的时间戳?

【问题讨论】:

    标签: git version-control tfs migrate tfs-migration


    【解决方案1】:

    TFS 的签到总是在实际签到的日期进行。从技术上讲这是可能的,但它需要调整服务器的注册表并从一个全新的 ProjectCollection 开始,而且该工具必须意识到这一点,因为它需要使用不同的 API 来签入数据。

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

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

    【讨论】:

    • 我还可以访问本地 TFS 服务器。是否可以迁移到它,然后将迁移的 TFS 存储库移动到 TFS Online?
    • 不,目前无法将集合导入 Visual Studio Online。 TFS 到 TFS 的迁移也有同样的时间戳问题。
    • 非常感谢您向我解释了这一点。正如你所说,为什么我不在 TFS 下使用 GIT?这是一个非常好的问题。为什么我没有想到呢? :-)
    • 不知道TFS下的GIT是不是这么好。我发现它的合并不可靠
    • @mamashare 它使用 git 进行合并。所以我不明白它比 Git 更可靠还是更不可靠。
    猜你喜欢
    • 2011-02-21
    • 1970-01-01
    • 2019-08-11
    • 2018-06-01
    • 1970-01-01
    • 2013-11-02
    • 1970-01-01
    • 2016-04-20
    • 1970-01-01
    相关资源
    最近更新 更多