gitリポジトリのbinおよびobjフォルダーを無視するにはどうすればよいですか?


110

gitリポジトリのbinおよびobjフォルダーを無視したい。私が知っているように、これを.gitignoreで行う簡単な方法はありません。それで、他に方法はありますか?Visual Studioでクリーンソリューションを使用していますか?


私にとっては問題ありません-.gitignoreファイルに「bin」と「obj」という単語を別々の行として追加します
Tim Robinson

1
そして、ソリューションが1つだけではなく、多くのプロジェクトで構成されている場合はどうでしょうか。
chester89

あなたがしようとしていることとうまくいかないことを正確に投稿できますか?objそしてbinトップレベルの.gitignoreで呼び出さすべて無視するべきobjか、binすべての下位レベルでは。
CBベイリー

2
私の理解では、.gitignoreの内容はすべてのサブディレクトリに適用されるため、単純な「bin」と「obj」はどこでも機能します。回答に私の.gitignoreを投稿します。
Tim Robinson、

回答:


164

これがうまくいかない理由はわかりません。それが役立つ場合は、Visual Studio / gitプロジェクトの1つからの典型的な.gitignoreファイルを次に示します。

*.suo
*.user
_ReSharper.*
bin
obj
packages

4
packagesNuGetから簡単に再ダウンロードできるので追加します
Michal Ciechan 2015年

1
最初にすべてのファイルをコミットし、次に.gitignoreファイルをリポジトリに追加してコミットするときには機能しません。新しく無視されたファイルは、変更されたものとして引き続き表示されます(たとえば、再構築した場合)。
vlad2135

7
私は最近ここにある推奨.gitignoreファイルを使用しました:github.com/github/gitignore/blob/master/VisualStudio.gitignoreは大成功です。
BigTFromAZ

1
@BigTFromAZ回答として追加する必要があります。承認されたものよりもはるかに優れています。
Avrohom Yisroel

60

gitignoreにエントリを作成するだけではファイルが無視されない場合があり、コミットする必要がある場合があります。私は次の方法を使用して私のために働きました

git rm -r --cached .

git add .

その後

git commit -am "Remove ignored files"

ただし、これにより、後でリポジトリに含めたスクリプトフォルダが無視されます。


それは大丈夫です。しかし、Vscodeは変更されたコードを見つけることができませんでした。自分で何かを変えて、それをオリジンマスターにプッシュしました。その後、うまくいきました。:)
Dentrax 2018年

私は多くのプロジェクトと何らかの理由でgit addのソリューションを持っています。決して完了しません。
チャッキー2018

初心者の開発者であるGreat Arvind!は、すべてのbin /とobj /を作業ブランチにマージしました(ポリシーをスキップします...方法はわかりません!)。これが、これらのファイルをすべてリポジトリから削除する方法でした。
equintas

初心者私(少なくともgitに対して)、私は自分でこれを行いました。git rmはインデックスからのみアイテムを削除し、ディスクからは削除しないことを理解していなかったため、rmを考えてから追加し直すことはありませんでした。したがって、私が正しく理解している場合、最初の2つのコマンドは、インデックスからすべてを削除し、すべてを追加して、.gitignoreフィルターを適用することにより、インデックスを再構築しました。次に、コミットにより、リポジトリにそのようになります。非常に賢い。
BigTFromAZ

すごい!これは私にとっては完璧に機能しました。すべての.vs、obj、bin、およびその他の無視されたファイル。
Stanley Okpala Nwosa

9

Visual Studioを使用している場合、これを行う簡単な方法があります。

  1. チームエクスプローラーを開く
  2. 設定をクリックします
  3. リポジトリ設定
  4. [無視&属性ファイル]セクションで、[ファイルを無視]の横にある[追加]をクリックします。

デフォルトの.gitignoreファイルが作成され、フレームワーク/言語で使用される一般的なフォルダーとファイルのほとんどが無視されます。

ここに画像の説明を入力してください


3
  • 探しbinobjWindowsエクスプローラでフォルダを
  • TortoiseGitを右クリック>削除して無視リストに追加>ビン
  • TortoiseGitを右クリック>削除して無視リストに追加> obj

1
それは完全に動作します。ありがとう@Denys Wessels
Biswajit Panday

2

すべてのプロジェクトでbinとobjを無視したい場合は、次のコマンドを使用できます(gitignore manページから)

構成変数core.excludesfileで指定されたファイルから読み取られたパターン。

core.excludesfileは、Unixでは〜/ .gitconfigである設定ファイルで設定できます-Windowsのどこにあるかわかりません


良い情報ですが、彼はこのソリューションのすべてのVisual Studioプロジェクトをマシン上のすべてのプロジェクトではなく意味しました。
アハテム2012年

2
ほとんどの場合、彼はANYソリューションでbinobjフォルダーをコミットすることに決して興味がありません。:)
MEMark 2013

1

以前にbinおよびobjフォルダーをコミットしたことがある場合、それらを.gitignoreに追加しても、それらは自動的に削除されません。たとえばgit rm -rf obj、これらのフォルダの削除をコミットするかgit rm -rf yourProject/obj 、削除をコミットする必要があり ます


0

ソースツリーを試しても、無視ファイルが入らない場合は、ツール->オプション-> Gitに移動して、.gitignoreの場所を選択してください ここに画像の説明を入力してください


0

私の場合、binおよびobjフォルダーはルートの.gitignoreファイルからProjectフォルダーの下にネストされていたため、以下のように追加する必要がありました。

[PROJECT_FOLDER_NAME] / bin
[PROJECT_FOLDER_NAME] / obj

PROJECT_FOLDER_NAMEをプロジェクトフォルダ名に置き換えます

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.