.gitignore does not work

This question already has an answer here:

  • Ignore files that have already been committed to a Git repository [duplicate] 21 answers

  • .gitignore only applies to untracked files. If you are tracking a .pyc then .gitignore won't apply. Remove the .pyc with git rm and next time you do a git status it (and any others) won't show up in the list of untracked file and nor will it be automatically added.


    Otherwise if you need to ignore a file already under version control, update the index to ignore changes to files already under version control:

    git update-index --assume-unchanged <files>
    

    For more information please see git-update-index(1) Manual Page, the related answer to .gitignore file not ignoring and the related answer to question (GIT: Ignoring Version-Controlled Files).


    man gitignore :

    A gitignore file specifies intentionally **untracked files** that git should ignore. Note that all the gitignore files really concern only files that are not already tracked by git

    git rm file will stop track them. I can't find a way to remove all ignored files from the repo.


    As you point out, the files don't appear to already exist in the repo. In that case, your git 's behaviour matches neither the documentation or the behaviour of mine, and I can't help you.

    $ mkdir foo
    $ cd foo
    /home/ikegami/foo
    $ mkdir feedapp
    $ touch feedapp/__init__.py
    $ touch feedapp/appconfig.py
    $ touch feedapp/appconfig.pyc
    $ echo '*.pyc' > .gitignore
    $ git init
    Initialized empty Git repository in /home/ikegami/foo/.git/
    $ git add .
    $ git status
    # On branch master
    #
    # Initial commit
    #
    # Changes to be committed:
    #   (use "git rm --cached <file>..." to unstage)
    #
    #       new file:   .gitignore
    #       new file:   feedapp/__init__.py
    #       new file:   feedapp/appconfig.py
    #
    $ 
    

    Perhaps you did

    git init
    git add .
    echo '*.pmc' >> .gitignore
    git init
    git add .
    

    in which case you can fix the problem using

    git rm --cached -r .
    git add .
    

    Had the exact same problem. Found out that "someText" > .gitignore made a file with a wierd encoding. Changed it to UTF-8, then all worked fine.

    链接地址: http://www.djcxy.com/p/23394.html

    上一篇: 如何在使用git之后解开CVS文件夹

    下一篇: .gitignore不起作用