保留中の変更ウィンドウにファイルが表示されます。最新バージョンと比較しようとすると、「ファイルが同一です」というメッセージが表示されます。ファイルが同一である場合、保留中の変更ウィンドウにこのファイルが表示されるのはなぜですか?このファイルについて何が変更されましたか?同一のファイルを一覧表示しないようにTFSを構成できますか?
保留中の変更ウィンドウにファイルが表示されます。最新バージョンと比較しようとすると、「ファイルが同一です」というメッセージが表示されます。ファイルが同一である場合、保留中の変更ウィンドウにこのファイルが表示されるのはなぜですか?このファイルについて何が変更されましたか?同一のファイルを一覧表示しないようにTFSを構成できますか?
回答:
変更によりファイルが自動的にチェックアウトされ、最終的にファイルのコンテンツが元の状態に戻される場合、これは正常です。その時点で、比較すると同じ内容に関するメッセージが表示されます。
このブログエントリは、これに対処するためのそれほど直感的ではない方法について説明しています。コメントには、TFSパワーツールを使用してコマンドラインから処理することについて、さらに良い提案があります。
tfpt uu
パワーツールを使用することを強くお勧めします。追加および変更された編集のみがこのプロンプトを受け取ります。たとえば、名前の変更(名前の変更は保留され、名前の変更と編集は行われません)は、プロンプトなしでUIによって元に戻されます。
tfpt uu /noget /r *
であり、ブランチのルートから実行する必要があります。これを言って、それは冗長な変更を正しくピックアップし、それらを取り消すと主張しますが、それでもVSおよびチェックインダイアログでチェックアウトされているので、壊れているように見えます:/
最近、VS2010をVS 2013に更新しましたが、この問題はさらに悪化しています。比較を使用すると、同一のファイルはまったくポップアップしません。比較ファイルを注意深くチェックするまで、どのファイルが本当に変更されているのかを理解できなかったので、これは嫌です。
最後に、これの回避策を
考え出します。外部ツールで「変更されていないチェックアウトを元に戻す」を追加します。
tfpt.exe
uu . /noget /recursive
$(SolutionDir)
このコマンドを実行すると、TFSはファイル内のすべての冗長な変更を自動的に元に戻します。
ただし、これらのファイルはまだチェックアウトステータスを保持しています。実際、これらのファイルは既に元に戻されており、最新バージョンと同じです。TFSのバグだと思います。ソリューションエクスプローラーの下のツールバーの[更新]アイコンをクリックするだけで、これらのファイルが更新され、正しいステータスが表示されます。
上記の説明を明確にするために:
私のために働いた。
さらに:
ワークスペースフォルダーに移動して実行する前に、開発者コマンドプロンプトの最初のプロンプト(およびワークスペースが見つかりませんというエラーが表示される)でコマンドを実行する必要がある場合があります。正しいフォルダに直接進むと、コマンドが見つかりません。 (私はその問題自体の解決策を気にしません。)
Unable to determine the workspace
。ワークスペースキャッシュを更新しようとしましたが、失敗しました。2時間後、あきらめて、変更されていないファイルをチェックインして、それらを削除します。
これを解決するには、Stage All
[変更]のボタンをクリックし、でステージングを解除しますUnstage All
。
それは私のChanges
セクションにあった未変更のファイルを解決しました。素敵でシンプル。
Visual Studio 2012では、ローカルワークスペースと呼ばれる新しい概念が導入されました。
ワークスペースの場所をローカルに構成すると、元のファイルのローカルコピーが配置されます(SVN / CVSと同様)。
次に、未変更のファイルを保留中の変更から自動的に非表示にします。
TFSソース管理エクスプローラーを使用してTFSワークスペースを「編集...」し、「詳細...」設定の場所をサーバーからローカルに変更します。
私にとって、ワークスペースを調整すると、これらの無効な保留中の変更が解決されます。