web-dev-qa-db-ja.com

Visual Studioが変更を追跡していない、または編集中にソース管理からファイルをチェックアウトしていない

TFSは初めてです。私の仕事では、TFSプロジェクトをローカルディレクトリにマップし、getを実行しましたが、すべてが期待どおりに機能しました。ローカルコピーのファイルを編集すると、ソース管理により自動的に編集のためにファイルがチェックアウトされ、保留中の変更ウィンドウを介して保留中の変更があるファイルが追跡されます。その後、そのウィンドウを使用して1日中チェックインするだけです。

しかし、自宅ではこれは起きていないようです。ソース管理にアクセスし、ソース管理エクスプローラーを使用して、プロジェクトをローカルディレクトリにマップしました。これはうまくいくように見えました。ただし、プロジェクトを開いてファイルを開くと、変更は自動的にファイルをチェックアウトしません。実際、Visual Studioは、変更を保存しようとするまで読み取り専用のステータスも変更しません。その時点で、ファイルが読み取り専用であることを警告し、アクセス許可を上書きして保存するかどうかを尋ねます。私はそうし、それはうまく動作します。ただし、繰り返しますが、保留中の変更ウィンドウに変更は登録されません。私はちょっと迷子です。私が本当に持っている唯一のソース管理の経験は、SubversionとビジュアルスタジオのAnkhSVNプラグインです。

何か案は?ソース管理エクスプローラーにあるソリューションファイルをダブルクリックして、ソリューションを開きました。あなたは、私が開いているソリューションがソース管理によって追跡されるべきであることを完全に認識していると思うでしょう。

どんな助けも大歓迎です。

[〜#〜] edit [〜#〜]人々が私が「家で」と言ったという事実にうんざりしているように見えるので、明確にさせてください。ネットワークに問題はありません。 VPNを使用しています。ソース管理は問題なく閲覧できます。それ以来、さまざまな理由ですべてを再インストールしました。すべてうまくいった。 Visual Studioに問題があり、ファイルへの変更を追跡せず、ソース管理にコミットできるようにします。まとめると:

Visual Studioは、正しくマッピングされ、最新情報を取得できるようになった後、どのように変更の追跡を停止できますか?ソース管理から更新できますが、コミットできません。変更を行った後でも、保留中の変更ウィンドウは空です。

TFSを使用した経験があり、この動作についてある程度の洞察を持っている人のみにしてください。私が何を話しているのかわからなくても心配する必要はありません。私は非常に明確であり、ソース管理にTFSを使用したことがある人なら誰でも質問を理解するでしょう。

61
Chev

通常、SOが最初にきちんとした答えを出しますが、今夜は誰かが数人の椅子にタックをかけると思います。別のサイトが私の質問に非常に正確に答えました。

ソリューションノードを右クリックして、[オンラインにする]に移動します。さまざまな理由で、Visual Studioはソリューションをソース管理によって追跡されているとマークできますが、「オフライン」です。あなたが再びオンラインになるのを待っている舞台裏の変化をまだ追跡しています。これを実行すると、保留中の変更ウィンドウが表示され、すべてが正常になります。どこかシンプルな設定だと思いました。

これが同じ問題を抱えている他の人の助けになることを願っています。

115
Chev

[ファイル]> [ソース管理]> [詳細]> [ソース管理の変更]で興味深い設定を見つけました。

ソリューションとプロジェクトをソース管理サーバーにバインドすると(既にバインドされている場合は最初にバインドを解除します)、突然動作します!ファイルを保存すると、ファイルが自動的にチェックアウトされ、変更が追跡されます。


編集:これはVisual Studioのバグのようです。この回避策が役立つ場合、開発チームがこれを修正できるように、Visual Studioのバージョン情報を使用して https://developercommunity.visualstudio.com で新しい問題を作成すると素晴らしいでしょう。

21
Carl Walsh

ソース管理バインディングに移動します([ファイル]-> [ソース管理]-> [ソース管理の変更])。プロジェクトではなくソリューションのみがバインドされていることがわかります。ソリューションを選択して、「バインド」をクリックします。

3

すでにオンラインになっているときにこれを修正する方法を見つけました(「オンラインにする」オプションは表示されません)。実際には、保留中の変更がリストされていますが、それらは巨大な「コメント」セクションの下に隠されています。それらを表示するには、「保留中の変更」タブの高さを増やし、「コメント」セクションの高さを減らします:スケーリングが不十分なVSによって隠された保留中の変更のリストが表示されます。

3
ValyaS

私の場合、以下の手順を適用して問題を解決しました:

  1. ソリューションエクスプローラーでソリューションファイルを右クリックします。
  2. ソース管理にソリューションを追加をクリックします
  3. 既にファイルをtfsに追加している場合は、ファイル置換ポップアップの無視をクリックします
2
cahit beyaz

私は他のみんなと同じように「読み取り専用」エラーを受け取っていました。編集中のファイルの横に小さな赤いチェックが表示されましたが、保存しようとすると、読み取り専用のファイルを保存するように求められました。別のバージョン管理システムからファイルを移動しましたが、それらはまだ読み取り専用でした。しかし、Gitは、以前のソース管理のようにファイルを読み取り専用にしておくことを気にしていないと思います。そのため、Windowsエクスプローラーで読み取り専用フラグを削除しただけでいいのです。

1
Trevor

私にとっての解決策は、Team Explorer Pending Changesウィンドウに移動し、そこからチェックインを開始することでした。オンラインオプションを表示しませんでした、私はVS2013です。すべてのポインターに感謝します!

1
bgolev

プロジェクトの1つが実際にはソース管理にまったく追加されていないことがわかりました。どういうわけかそれが見逃されていたため、そのプロジェクトへの変更はチェックアウトされません。ソリューションノードを右クリックし、[ソース管理に追加]をクリックして、一部のプロジェクトが既に追跡されていることを警告し、それらのプロジェクトを無視することを選択し、不足しているプロジェクトをソース管理に追加しました。これで、チェックアウトは完全に機能します。他の人に役立つ場合に共有しましょう!

1
namford

この投稿の回答/提案は役に立たなかったが、何時間も髪を引っ張った後、問題の解決策を見つけた。

  1. .gitリポジトリーのフォルダー。
  2. index.lockファイル。
  3. Visual Studioを再起動します。

(私はVisual Studio 2017を使用しています。)

0
susieloo_