如何在存储库中的任何地方git忽略ipython笔记本检查点


99

这主要是一个git问题。我想提交我的ipython笔记本,但是gitignore检查点。

存储库有多个文件夹,每个文件夹都有ipython笔记本,因此仅忽略一个目录并不能解决该问题。我想继续添加带有笔记本的新文件夹而不必担心。

我的直觉是,必须有一种方法可以使用一些通配符来gitignore名为* /。ipynb_checkpoints /的文件夹中的任何内容,但是还无法弄清楚。

那么,无论它们在哪里,我怎样才能忽略存储库中的所有ipython笔记本检查点?

Answers:


130

如果添加到.gitignore:

.ipynb_checkpoints

(在任何地方都没有斜杠),则该仓库中具有该名称的任何文件或目录都将被忽略。仅在包含时检查路径/

这个答案中,您还可以为您的计算机设置全局gitignore:

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

1
这似乎应该起作用,但是由于某种原因对我不起作用。在根存储库文件夹中,我的检查点位于notebooks/.ipynb_checkpoints/,我一生无法忽略它们!我尝试添加该路径,并在.gitignore后面加上或不加上斜杠。我尝试了你的建议。我尝试添加很多星星。有任何想法吗?
Engineero

@Engineero您是否告诉过git .gitignore文件所在的位置git config
CiprianTomoiagă17年

4
@Engineero:您已经提交了一些吗?.gitignore事实发生后不能忽略某些东西(如果它们已经提交)
Mr_and_Mrs_D

@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存储库基本目录中的我的文件。这是一个广泛的过程,如果您想在存储库中保留隐藏文件,将很难维护它,但是除了my之外,我不需要任何文件.gitignore,因此对我有用!


对我来说,以上所有方法均无效。甚至您的建议。创建检查点时,它将显示为git status。
pebox11

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.