如何 git 忽略存储库中任何位置的 ipython 笔记本检查点
How to git ignore ipython notebook checkpoints anywhere in repository
这主要是一个 git 问题。我想提交我的 ipython 笔记本,但 git 忽略检查点。
repo 有多个文件夹,每个文件夹都有 ipython 个笔记本,因此仅仅忽略一个目录并不能解决问题。我想继续添加新的文件夹,里面有笔记本而不用担心。
我的直觉是,必须有一种方法可以使用一些通配符 git忽略名为 */.ipynb_checkpoints/[= 的文件夹中的任何内容21=] 但一直没弄清楚。
那么,我如何 git 忽略存储库中的所有 ipython 笔记本检查点,无论它们在哪里?
如果添加到.gitignore:
.ipynb_checkpoints
(任何地方都没有斜杠),回购协议中具有该名称的任何文件或目录都将被忽略。只有包含 /
.
时才会检查路径
从 this answer 开始,您还可以为您的计算机安装全局 gitignore:
git config --global core.excludesfile '~/.gitignore'
echo '.ipynb_checkpoints' >> ~/.gitignore
添加到您的.gitignore
:
.ipynb_checkpoints
*/.ipynb_checkpoints/*
你应该可以开始了。
这有效。
Folder/.ipynb_checkpoints/*.ipynb
我建议在您的 .gitignore
文件中使用 **/*.ipynb_checkpoints/
。
出于某种原因,none 当前答案对我有用。我最终能够 git 忽略我所有的检查点文件(以及任何其他不需要的隐藏文件和文件夹),方法是添加:
.* # ignore all hidden files and folders
!/.gitignore # explicitly do not ignore .gitignore
到我的 .gitignore
回购基目录中的文件。这是一个广泛的扫描,如果你想在你的 repo 中保留隐藏文件,维护起来会很痛苦,但我不需要任何东西,除了我的 .gitignore
,所以它对我有用!
有时您可能会忘记您已经在跟踪 git 存储库中的文件(就像我的情况一样)。所以你可能必须先取消跟踪它
git rm --cached Folder_with_ipynb/.ipynb_checkpoints/news-checkpoint.ipynb
然后添加到您的 .gitignore
行:
*/.ipynb_checkpoints/*.ipynb
我使用了命令rm -rf .ipynb_checkpoints
。这对我有用。
如果您还没有推送代码,请添加
.ipynb_checkpoints
到你的 .gitignore
如果您之前已经推送过代码,请添加
.ipynb_checkpoints
到你的 .gitignore。这将确保 .ipynb_checkpoints 将来会被忽略,但不会删除旧的 .ipynb_checkpoints
您必须手动删除相应分支中每个文件夹中的缓存。首先转到包含 .ipynb_checkpoints 的文件夹,然后执行
git rm -r --cached .ipynb_checkpoints
这主要是一个 git 问题。我想提交我的 ipython 笔记本,但 git 忽略检查点。
repo 有多个文件夹,每个文件夹都有 ipython 个笔记本,因此仅仅忽略一个目录并不能解决问题。我想继续添加新的文件夹,里面有笔记本而不用担心。
我的直觉是,必须有一种方法可以使用一些通配符 git忽略名为 */.ipynb_checkpoints/[= 的文件夹中的任何内容21=] 但一直没弄清楚。
那么,我如何 git 忽略存储库中的所有 ipython 笔记本检查点,无论它们在哪里?
如果添加到.gitignore:
.ipynb_checkpoints
(任何地方都没有斜杠),回购协议中具有该名称的任何文件或目录都将被忽略。只有包含 /
.
从 this answer 开始,您还可以为您的计算机安装全局 gitignore:
git config --global core.excludesfile '~/.gitignore'
echo '.ipynb_checkpoints' >> ~/.gitignore
添加到您的.gitignore
:
.ipynb_checkpoints
*/.ipynb_checkpoints/*
你应该可以开始了。
这有效。
Folder/.ipynb_checkpoints/*.ipynb
我建议在您的 .gitignore
文件中使用 **/*.ipynb_checkpoints/
。
出于某种原因,none 当前答案对我有用。我最终能够 git 忽略我所有的检查点文件(以及任何其他不需要的隐藏文件和文件夹),方法是添加:
.* # ignore all hidden files and folders
!/.gitignore # explicitly do not ignore .gitignore
到我的 .gitignore
回购基目录中的文件。这是一个广泛的扫描,如果你想在你的 repo 中保留隐藏文件,维护起来会很痛苦,但我不需要任何东西,除了我的 .gitignore
,所以它对我有用!
有时您可能会忘记您已经在跟踪 git 存储库中的文件(就像我的情况一样)。所以你可能必须先取消跟踪它
git rm --cached Folder_with_ipynb/.ipynb_checkpoints/news-checkpoint.ipynb
然后添加到您的 .gitignore
行:
*/.ipynb_checkpoints/*.ipynb
我使用了命令rm -rf .ipynb_checkpoints
。这对我有用。
如果您还没有推送代码,请添加
.ipynb_checkpoints
到你的 .gitignore
如果您之前已经推送过代码,请添加
.ipynb_checkpoints
到你的 .gitignore。这将确保 .ipynb_checkpoints 将来会被忽略,但不会删除旧的 .ipynb_checkpoints
您必须手动删除相应分支中每个文件夹中的缓存。首先转到包含 .ipynb_checkpoints 的文件夹,然后执行
git rm -r --cached .ipynb_checkpoints