.gitignore不起作用

这个问题在这里已经有了答案:

  • 忽略已经提交给Git仓库的文件[复制] 21个答案

  • .gitignore仅适用于未跟踪的文件。 如果您正在跟踪.pyc那么.gitignore将不适用。 用git rm删除.pyc ,下一次你做一个git status它(和任何其他的)不会出现在未跟踪文件列表中,也不会自动添加。


    否则,如果您需要忽略已受版本控制的文件,请更新索引以忽略对已受版本控制的文件的更改:

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

    有关更多信息,请参阅git-update-index(1)手册页,不忽略.gitignore文件的相关答案以及与问题相关的答案(GIT:忽略版本控制文件)。


    man gitignore

    gitignore文件指定git应该忽略的故意**未跟踪的文件。 请注意,所有的gitignore文件都只涉及到git尚未跟踪的文件

    git rm file将停止跟踪它们。 我找不到从回购库中删除所有被忽略的文件的方法。


    正如你指出的那样,这些文件看起来并不存在于回购协议中。 在这种情况下,你的git的行为既不符合我的文档也不符合我的行为,我无法帮助你。

    $ 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
    #
    $ 
    

    也许你做到了

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

    在这种情况下,您可以使用修复问题

    git rm --cached -r .
    git add .
    

    有完全相同的问题。 发现“someText”> .gitignore用一个奇怪的编码创建了一个文件。 将其更改为UTF-8,然后全部正常工作。

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

    上一篇: .gitignore does not work

    下一篇: Apply git .gitignore rules to an existing repository