Skip to content

Filter .ipynb (nbformat) files to improve integration with version control systems (VCS)

License

Notifications You must be signed in to change notification settings

chbrown/nbfilter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 

Repository files navigation

nbfilter

PyPI version

Filter .ipynb (nbformat) files to improve integration with version control systems (VCS), specifically git.

Setup

Install from PyPI:

pip install nbfilter

Use from the command line:

python -m nbfilter.clean < research.ipynb | sponge research.ipynb

Integrate into git:

From your repository's root directory:

Run the following command to define a filter called ipynbfilter in your .git/config settings:

git config filter.ipynbfilter.clean 'python -m nbfilter.clean'

Then run one of the following command sequences to trigger it for all files with the .ipynb extension:

printf '*.ipynb filter=ipynbfilter\n' >> .gitattributes # Apply filter for all contributors
git add .gitattributes

or:

printf '*.ipynb filter=ipynbfilter\n' >> .git/info/attributes # Apply filter for just me

To apply it to files that are already under source control (for example, so that diffing subsequent changes produces more intelligible results):

git add --renormalize . # (re-)apply filters to all files currently under source control

or:

git add --renormalize research.ipynb # (re-)apply filters to a single file

References / alternatives

License

Copyright (c) 2018 Christopher Brown. MIT Licensed.

About

Filter .ipynb (nbformat) files to improve integration with version control systems (VCS)

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages