web-dev-qa-db-ja.com

Visual Studio 2013 Team Explorer / Git統合の欠落ファイル

Visual Studio 2013をネイティブGit統合とBitBucketでセットアップしました。

これまでは問題なく動作していましたが、Visual Studioが新しく作成されたファイル(単純な新しい.csファイルなど、IDEで作成されたファイル)を追跡してBitBucketにアップロードするのを停止しました。

  • 既に追跡されたファイルからの変更のコミット/プッシュは引き続き正常に機能します
  • 新しいファイルありません除外された変更または追跡されていないファイルのリストに表示されます
  • 新しいファイルareはプロジェクトファイルに含まれます(これらは正しい変更を示しています)
  • ファイルは間違いなくnot他の方法(.gitignoreなど)で除外されます。

新しいファイルが追跡されなくなる原因は他にありますか?

31
Alex

私は最近同様のことを経験しましたが、不足しているファイルを除外してから再度含めるとうまくいきませんでした。 VS2013 Premiumでは、[変更]ウィンドウの下部に[追跡されていないファイル]セクションがあることに気付きました。含めたいファイルを右クリックして追加するだけで済みました。確かに理想的ではありませんが、別の回避策です。

34
hawkke

OPと同じ問題があります。

  • すでに追跡されたファイルからの変更のコミット/プッシュは引き続き正常に機能します
  • 新しいファイルが除外された変更または追跡されていないファイルのリストに表示されない
  • 新しいファイルはプロジェクトファイルに含まれています(それらは正しい変更を示しています)
  • ファイルは他の方法(.gitignoreなど)で確実に除外されません。

したがって、Visual Studioは、追跡されていないファイルの下には表示されないため、追跡されているのではなく、追跡されていると考えているようです。

私の回避策

Visual Studioで追跡されていないファイルを追加できないため、回避策はgit bashを使用して、追加する必要があるファイルごとに手動でgit addを実行することです。その後、彼らは再びビジュアルスタジオ内で正常に動作します。

私はこれがすぐに修正されることを願っています...このバグは別として、git統合は、私がそれを試した短い時間から非常にいいようです。

3
user3533716

.csファイルを追加したのと同じ問題がありましたが、VSはそれを追加されたものとして認識せず、変更に含めません。

回避策として、 SourceTree (BitBucketで作業するためにAtlassianによって狂った)を開き、「Unstaged Files」セクションを確認して、右クリック>ファイルを追加します。 VSはすぐに変更/追加を取得し、VSを介してコミットできます。

コミットを追跡するためにVSに信頼/依存することはまだできないため、理想的ではありません。

2
Steven Evers

かなり古い質問ですが、先週のVS2013でも同様の問題があり、プレビューの回避策はどれも効率的ではありません。ファイルを編集している間、それはチームエクスプローラーの変更ファイルのリストに表示されますが、ファイルが保存されるとすぐに、リストから削除されます。他のツール(git bash、亀など)は、VSではなく変更およびコミット解除と見なしていました。チームエクスプローラーのGitのパラメーターでこの問題を解決するには、ソリューションの.gitIgnoreファイルを生成します。これがお役に立てば幸いです。

関連する可能性があります: Gitの変更がVS2013 Update 2に表示されない

2
xelandreb

Visual Studio 2013バージョン12.0.21005.1 RELで同じことを経験しました。特定のフォルダーにテストファイルhello.csを置き、「Untracked」と表示されますが、同じファイルを同じリポジトリ全体のフォルダにある別のフォルダは、どこにも表示されません(含まれている、除外されている、追跡されていない)。

BootstrapとJQueryを含むいくつかの深いフォルダーがあり、それら自体に.gitignoreと.gitattributeファイルがあり、単にそれらをdisabled.gitignoreとdisabled.gitattributeに名前変更しただけで、次に、Visual Studioのチームエクスプローラーペインの上部にある小さな更新アイコンをクリックすると、見つからないファイルがすべて再表示されます。

Visual Studio 2013のバグのようです。おそらく古いバージョンです。gitignoreファイルは、独自のフォルダー内にのみスコープを持つことが期待されていましたが、Visual Studioがフォルダー階層全体を走査し続けているため、効果があるようです。 、特にアルファベット順または深さ優先/深さ最後のシーケンスではありません!

1
Dave Lampert

私はこの問題を抱えていました。各ステップ間でコミットを行う場合でも、プロジェクトから削除して追加し直すことはできませんでした。ソースツリーを使用してコミットを記述し、VSを使用してそれをvstoにプッシュする必要がなくなりました。

0
David Wolfe

.gitignoreフォルダと同じレベルでローカルリポジトリに.gitファイルを追加することで、これを解決しました。

  1. Gitプロジェクトに接続しているチームエクスプローラーで、ドロップダウンをクリックしてSettingsを選択します
  2. Gitの下でGit Settingsをクリックします enter image description here
  3. 一番下のRepository Settings > Ignore Fileの下でAddをクリックします enter image description here

これにより、デフォルトの.gitignoreファイルが作成されます。これは私にとってはうまくいきましたが、ファイルの内容をここで推奨されているようなものに置き換えることもできます: https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

これが誰かに役立つことを願っています!

0

同様の問題があり、私の解決策はTortoiseGitの使用です。コミットしたい場合は、「バージョン管理されていないファイル」セクションで、TortoiseGitは.gitignoreで一致しないがファイルシステムに追加されたファイルを表示します。すべてをチェックして(追加したい場合)、コミットを押すだけです。

enter image description here

これは、Visual Studio Gitの1つの問題だけではありません。特に値のない一般的なエラーメッセージ。 TortoiseGitまたはGit bashに切り替えて、Visual Studio Gitツールが好ましくないものを見つけるたびに、.

0
Jozef Cechovsky

古い投稿ですが、この問題の新しい原因が発生しました。ダウンロードしたプラグインを含めて入手しました。プラグインには独自の.gitフォルダーがあり、VSのgitを妨害しているようです。フォルダーを削除した後、追跡されていないすべてのファイルの名前を変更し、元の名前に戻しました。VSは、ファイルの前に+を追加し始め、追跡されていることを示します...

0

私もこの問題を抱えていましたが、Windowsにインストールされたgitが古くなってしまいました。それを更新すると、VSはgit reposをもう一度追跡してコミットできるようになります

https://msysgit.github.io/

0
Eric Herlitz

私は同じ問題を経験しましたが、言及された解決策のどれも役に立たなかった。 VS2015からBitbucket Gitリポジトリにファイルをコミットすることができませんでした。結局、ファイルに変更を加え(保存しなかった)、ファイルをステージングしてコミットしました。ソースツリーは「追加済み」として追跡することもできました。

0
Constant

私の場合、シェルから手動で追加することでこの問題を解決しました。

0
Alex Zhukovskiy