【问题标题】:git-tf: checkin a commit which moves a file from a folder which is to be deletedgit-tf:签入从要删除的文件夹中移动文件的提交
【发布时间】:2012-11-12 19:02:55
【问题描述】:

我在使用 git-tf 检查特定提交时遇到问题。有问题的提交涉及移动(重命名)一个文件,该文件是要删除的文件夹的子文件夹。显然,这是 TFS 中的禁忌(请参阅 this SO post)。

在未来,我显然会尽量避免在 git 端的一次提交中这样做。但由于我已经犯了这个错误,我需要想办法让 git-tf checkin 工作。我对 git 比较陌生,所以也许有一个简单的解决方案。似乎我需要以某种方式返回并将有问题的提交“拆分”为两部分:文件被移动/重命名出文件夹的地方,以及文件夹被删除的地方。或者也许我可以在 TFS 方面做一些事情来让它快乐。

TFS 抛出的错误如下: TF14060: 项目 $/blah/... 无法删除。一个或多个孩子有待处理的更改。

有什么想法吗?

【问题讨论】:

    标签: git tfs git-tf


    【解决方案1】:

    来自 codeplex 的乐于助人的人:

    要解决此错误,您可以尝试以下操作

    git tf checkin --renamemode=justFiles

    这将重命名需要的文件 重命名但将空文件夹留在 TFS 中。

    这对我有用。正如所承诺的,此选项在 TFS 端留下了一个空文件夹。我能够删除 TFS 上的文件夹,然后执行“git-tf pull”,没有任何进一步的问题。

    【讨论】:

    • 注意:如果您使用的是 git tfs(而不是 git tf),那么您应该更新到 0.17.1 或更高版本。那应该可以解决这个问题。
    • 我用 git tfs 0.25.1.0 看到它。
    • 我在 0.27.0 中遇到了完全相同的问题。为了解决这个问题,我必须在试图删除的文件夹中创建一个虚拟文件。然后在签入后在 tfs 中删除它! :(
    猜你喜欢
    • 2012-09-10
    • 2021-12-31
    • 2017-09-18
    • 2017-11-27
    • 2021-02-24
    • 2023-04-04
    • 2019-03-19
    • 2017-12-23
    • 2018-04-04
    相关资源
    最近更新 更多