Search code examples
githubgitignore

How to add subfolder to gitignore file?


I have .gitignore in learning_python folder,

need to add .ipynb_checkpoints folder to .gitignore.

.ipynb folder location:

learning_python/python_crash_course/.ipynb_checkpoints/

Solution

  • You can simply add in your .gitignore at the top folder of the repositry:

    .ipynb_checkpoint/
    

    The OP Jay reports in the comments using:

    **/.ipynb_checkpoint/
    

    It will ignore any .ipynb_checkpoint/ subfolder.
    See also "Difference between .gitignore rules with and without trailing slash like /dir and /dir/".

    But you need first to remove that folder from the repo (it is is already tracked, adding it to .gitignore would have no effect)

    git rm --cached -r python_crash_course/.ipynb_checkpoints
    

    Check that it is working with:

    git check-ignore -v -- path/to/.ipynb_checkpoint/aFile
    

    Example:

    D:\git>git clone https://github.com/r46j/learning_python
    Cloning into 'learning_python'...
    remote: Enumerating objects: 51, done.
    remote: Counting objects: 100% (51/51), done.
    remote: Compressing objects: 100% (35/35), done.
    
    Receiving objects: 100% (51/51), 16.19 KiB | 2.31 MiB/s, done.
    Resolving deltas: 100% (16/16), done.
    
    D:\git>cd learning_python
    
    D:\git\learning_python>cd python_crash_course
    D:\git\learning_python\python_crash_course>mkdir .ipynb_checkpoint
    
    D:\git\learning_python\python_crash_course>cd .ipynb_checkpoint
    
    D:\git\learning_python\python_crash_course\.ipynb_checkpoint>echo ee>dummy
    
    D:\git\learning_python\python_crash_course\.ipynb_checkpoint>cd ..\..
    D:\git\learning_python>git check-ignore -v -- python_crash_course\.ipynb_checkpoint\dummy
    .gitignore:1:.ipynb_checkpoint/ "python_crash_course\\.ipynb_checkpoint\\dummy"
    

    If it does, add, commit (to record the deletion) and push.