【问题标题】:git-tfs local Git repo to TFVCgit-tfs 本地 Git 存储库到 TFVC
【发布时间】:2015-07-14 11:48:43
【问题描述】:

我正在使用本地 TFS 实例测试 git-tfs(它是否也适用于 VSO?)并尝试使用 rcheckin 将我的 Git 提交推送到 TFVC。但是,当我尝试使用 rcheckin 时,我收到一个错误,即找不到 TFS 父级。我推送的 TFVC 存储库是空的,我想将我的更改从 Git 推送到 TFVC。这是我所做的:

C:\git add remote tfs http://localhost:8080/tfs/DefaultCollection/TeamProject
C:\git tfs rcheckin -master
Working with tfs remote: default
No TFS parents found!

我错过了什么?我是否为我的其他分支(如 feature1、feature2 等)运行此命令?我对 Git-TFS 很陌生,但它似乎是一个非常方便的工具。

【问题讨论】:

    标签: git github tfvc git-tfs


    【解决方案1】:

    免责声明:我是 git-tfs 的开发者之一...

    它也适用于 VSO 吗?

    是的!

    我错过了什么?

    在能够使用 git-tfs(并使用 rcheckin 命令)之前,您必须 clone 您的 tfs 存储库。

    也可以随意阅读其他文档。 使用 rcheckin 是个好主意 ;-)

    如何使用现有的 Git 存储库(单独)将更改推送到 TFS 存储库?我已经克隆了 TFS 存储库,看起来它进入了一个带有自己的 .git 文件夹的单独文件夹

    Git-tfs 不打算这样做。但是使用rebase 存在一个(困难的!)解决方案。

    1. 在从 TFS 克隆的新存储库中将现有存储库添加为远程并获取
    2. 使用 git rebase --into 将旧的现有提交重新设置为从 tfs 获取的提交
    3. 使用rcheckin 推送提交
    4. 如果您有分支机构,请一次又一次地这样做(有更多的细节。我希望您没有!!!)

    编辑:我有 written a shell script 替换前 2 个步骤,使其更容易和更快。

    【讨论】:

    • 这太棒了,谢谢!如何使用现有的 Git 存储库(单独)将更改推送到 TFS 存储库?我已经克隆了 TFS 存储库,看起来它进入了一个带有它自己的 .git 文件夹的单独文件夹。
    • Git-tfs 不打算这样做。但是使用rebase 存在一个(困难的!)解决方案。 1. 在从 TFS 克隆的新 repo 中添加您现有的 repo 作为远程并获取 2. 使用 git rebase --into 将旧的现有提交重新设置为从 tfs 获取的提交 3. 使用 rcheckin 推送提交 4. 再做一次如果你有分支(有更多的细节。我希望你没有!!!)
    • 完美,很好的答案!幸运的是,不必走这条路,但现在我知道了! :)
    • 这样做很有意义。把它作为一个'git-tfs add-tfs'命令会很好,它基本上做了克隆命令的作用,只是它不做git的东西。 ;)
    • 关于单独的 GIT 存储库 (repoA) 以及如何将更改从它推送到 TFS - 我最终做的是使用 git-tfs 将 TFS 存储库克隆到 GIT 存储库 (repoB),然后合并从 repoA 更改为 repoB(本地)并将它们从 repoB 提交到 TFS。此处描述的脚本对我不起作用。
    猜你喜欢
    • 1970-01-01
    • 2021-05-10
    • 2016-08-15
    • 2018-06-21
    • 2019-08-11
    • 2019-04-10
    • 1970-01-01
    • 2023-03-20
    • 2013-02-23
    相关资源
    最近更新 更多