4

git-tfを使用して特定のコミットをチェックインする際に問題が発生しています。問題のあるコミットには、削除されるフォルダーの子であるファイルの移動(名前の変更)が含まれます。どうやらこれはTFSではノーノーです(このSOの投稿を参照)。

将来的には、git側の1回のコミットでこれを行わないようにすることは明らかです。しかし、私はすでにこのエラーを犯しているので、git-tfチェックインを機能させるためにそれを回避する方法を見つける必要があります。私はgitに比較的慣れていないので、簡単な解決策があるかもしれません。どういうわけか戻って、問題のあるコミットを2つの部分に「分割」する必要があるようです。1つはファイルがフォルダーから移動/名前変更され、もう1つはフォルダーが削除されます。あるいは、TFS側でそれを幸せにするために私ができることがあるかもしれません。

TFSがスローしているエラーは次のとおりです。TF14060:アイテム$ / blah/...は削除できません。1人以上の子に保留中の変更があります。

何か案は?

4

1 に答える 1

4

codeplexの役立つ人々から:

このエラーを回避するには、次のことを試してください

git tf checkin --renamemode = justFiles

これにより、名前を変更する必要のあるファイルの名前が変更されますが、空のフォルダーはTFSに残されます。

これは私にとってトリックでした。約束どおり、このオプションはTFS側に空のフォルダーを残しました。TFSでフォルダーを削除してから、問題なく「git-tfpull」を実行できました。

于 2012-11-12T19:22:22.877 に答える