git忽略已加入到版本库的文件

Posted azhqiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git忽略已加入到版本库的文件相关的知识,希望对你有一定的参考价值。

项目中,我们会用到 ‘.gitignore‘ 来忽略一些文件,不记录这些文件的版本控制。
 
然而,经常发现,已经添加到了 ‘.gitignore‘ 的文件/目录,每次的修改等扔会记录版本。
 
产生这种原因,一般都是由于,在初始项目时,已经使用 git add 将该文件,加入到了版本库
 
如何来从版本库移除呢?
    git rm -r --cached /vendor
        git rm 的选项:
            -f, --force
            -n, --dry-run            // 不真实删除,只显示将被删除的文件
            -r                         // 递归删除目录
            --                         // 用于将命令行选项和文件列表分开(当文件名和命令行选项比较容易混淆时,很有用!)
            --cached                 // 我们本次核心使用,不记录到版本库
            --ignore-unmatch         // 及时没有匹配到要删除的文件,也返回 ‘0‘ 状态码(不爆粗)
            -q, --quiet                // 通常 git rm 会将删除结果输出,该选项抑制输出!
 
 
 
    git commit -m "从版本库移除vendor目录"
    git push 
 
感觉博客总结的几句话,很清晰,摘抄下(https://www.cnblogs.com/toward-the-sun/p/6599656.html):
    git rm 和 git rm --cached 区别:
        当我们需要删除暂存区或分支上的文件,同时工作区 ‘不需要‘ 这个文件,可以使用 ‘git rm‘
            git rm file
            git commit -m ‘delete file‘
            git push
 
        当我们需要删除暂存区或分支上的文件,但是本地 ‘需要‘ 这个文件,只是 ‘不希望加入版本控制‘,可以使用 ‘git rm --cached‘
            git rm --cached file
            git commit -m ‘delete remote file‘
            git push
 
参考文章:
    https://www.cnblogs.com/toward-the-sun/p/6599656.html
    http://blog.csdn.net/wtq1993/article/details/51556794
 
.gitignore 详解:
    https://www.cnblogs.com/ShaYeBlog/p/5355951.html
 

 

以上是关于git忽略已加入到版本库的文件的主要内容,如果未能解决你的问题,请参考以下文章

Git忽略已追踪文件或文件夹

git忽略对已入库文件的修改

git 如何忽略已经加入到版本控制的文件

Git 忽略一些文件不加入版本控制

NO.A.0003——Git下将java工程推送到远程仓库,实现代码交换

Git排除不需要加入文档库的文件