リポジトリ内の任意の場所でipythonノートブックのチェックポイントをgitで無視する方法


99

これは主にgitの質問です。私のipythonノートブックをコミットしたいが、チェックポイントをgitignoreしたい。

リポジトリには複数のフォルダがあり、それぞれにipythonノートブックがあるため、単一のディレクトリを無視するだけでは解決できません。ノートブックを入れた新しいフォルダを心配せずに追加し続けたいです。

私の直感は、* /。ipynb_checkpoints /と呼ばれるフォルダーにあるが、それを理解することができなかったものgitignoreするために、いくつかのワイルドカードを使用する方法がなければならないことです。

それで、リポジトリにあるすべてのipythonノートブックチェックポイントをどこにでもgitで無視するにはどうすればよいですか?

回答:


129

.gitignoreに追加した場合:

.ipynb_checkpoints

(どこにもスラッシュはありません)、その名前のリポジトリ内のファイルまたはディレクトリは無視されます。が含まれて/いる場合にのみ、パスがチェックされます。

この答えから、あなたのコンピュータにグローバルなgitignoreを持たせることもできます:

git config --global core.excludesfile '~/.gitignore'
echo '.ipynb_checkpoints' >> ~/.gitignore

1
これは動作するはずですが、何らかの理由で動作しません。ルートレポジトリフォルダーから、私のチェックポイントはにありnotebooks/.ipynb_checkpoints/、私は一生無視することはできません。.gitignoreに末尾のスラッシュを付けて、付けずにそのパスを追加してみました。私はあなたの提案を試みました。たくさん星をつけてみました。何か案は?
Engineero

@Engineeroはあなたの.gitignoreファイルがどこにあるのgit configかgitに伝えましたか?
CiprianTomoiagă2017年

4
@Engineero:すでにコミットしましたか?.gitignore事後のものを無視することはできません(すでにコミットされている場合)
Mr_and_Mrs_D '24年

@CiprianTomoiagaそれは自分の.gitignore元気を見つけており、他のファイルやフォルダは無視されます。これが機能しない理由はわかりませんが、機能するものを見つけました。回答として追加します。
Engineero

@Mr_and_Mrs_D私にもその問題がありましたが、ファイルのインデックスを解除し、で別のことを試しました.gitignore。結局、答えとして追加するものでそれを動作させることができました。
Engineero


10

に追加.gitignore

.ipynb_checkpoints
*/.ipynb_checkpoints/*

そして、あなたは行ってもいいはずです。



2

(私の場合のように)gitリポジトリ内のファイルをすでに追跡していることを忘れることがあります。したがって、最初に追跡を解除する必要があるかもしれません

git rm --cached Folder_with_ipynb/.ipynb_checkpoints/news-checkpoint.ipynb

そしてあなた.gitignoreの行に追加してください:

*/.ipynb_checkpoints/*.ipynb

-1

何らかの理由で、現在の答えはどれもうまくいきませんでした。次のように追加することで、最終的にgitにすべてのチェックポイントファイル(およびその他の不要な隠しファイルとフォルダー)を無視させることができました。

.*  # ignore all hidden files and folders
!/.gitignore  # explicitly do not ignore .gitignore

.gitignoreリポジトリのベースディレクトリにある私のファイルに。これは大規模なスイープであり、隠しファイルをリポジトリに保持したい場合は維持するのが面倒ですが、私以外には何も必要ないので、私にとってはうまくいき.gitignoreます!


はい、私にとっても上記の作品はどれもうまくいきません。あなたが提案したものでさえ。チェックポイントが作成されると、gitステータスで表示されます。
pebox11

-2

コマンドを使いましたrm -rf .ipynb_checkpoints。これでうまくいきました。


2
それはそれを無視するのではなく、フォルダを削除することです。これは誤解を招く答えです。
Chandra Kanth
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.