zoukankan      html  css  js  c++  java
  • git 忽略文件的四种方式

    Git 提供了四种方法来忽略文件,分别适用不同情况,如下:

    1、全局忽略

    忽略规则由本机所有仓库共用,配置方法如下:
    编辑 ~/.gitconfig 文件,

    [user]
        name = yourname
        email = yourname@email.com
    [gui]
        encoding = utf-8
    [core]
       excludesfile = ~/.gitignore

    最后两行是新增的,用户设置全局忽略的配置文件目录,本例子是存放于 ~/.gitignore 下,可以改成其他路径。
    或通过命令行添加配置:

    git config --global core.excludefile ~/.gitignore

    2、单个仓库下忽略(远程共用)

    单个仓库下忽略,同时同步该设置至远程仓库,与其他克隆仓库共用;这个方法也是最常用的,配置方法是在仓库的根目录下新建 .gitignore 文件,在文件里配置忽略规则,同时把 .gitignore 文件加入版本管理。

    比如:

    # phpstorm project files
    .idea
    .tags
    .tags_sorted_by_file

    3、单个仓库下忽略(本机使用)

    单个仓库下忽略,不会同步该设置至远程仓库,只在本机起作用;配置方法是直接编辑仓库根目录下的.git/info/exclude文件,把要忽略的规则直接写入,这个方法只在本机当前仓库起效,不会对其他的克隆仓库起效。

    配置文件规则参考 中文文档

    比如:

    # git ls-files --others --exclude-from=.git/info/exclude
    # Lines that start with '#' are comments.
    # For a project mostly in C, the following would be a good set of
    # exclude patterns (uncomment them if you want to use them):
    # *.[oa]
    # *~
    
    
    read.md

    4、忽略已跟踪文件的改动(本机使用)

    上诉1,2,3方案都是适用于未跟踪的文件改动,而对于已跟踪文件的改动并不适用,好在针对这种情况 Git 也提供了我们方法去忽略。

    #忽略跟踪(提交代码时,忽略某一个文件不提交,即某个文件不被版本控制)
    git update-index --assume-unchanged FLIE   #FILE是目标文件路径       
    #恢复跟踪
    git update-index --no-assume-unchanged FLIE   #FILE是目标文件路径  

    不过如果执行 git checkoutgit reset的时候仍然会影响到这些文件,并把内容恢复到被跟踪的内容(再次修改仍然不会被跟踪)。

    如果忽略的文件多了,可以使用以下命令查看忽略列表

    git uls-files -v | grep '^h '

    提取文件路径,方法如下

    git ls-files -v | grep '^h ' | awk '{print $2}'

    所有被忽略的文件,取消忽略的方法,如下

    git ls-files -v | grep '^h' | awk '{print $2}' |xargs git update-index --no-assume-unchanged  

    更多update-index 参考:https://www.cnblogs.com/wt645631686/p/10007328.html

  • 相关阅读:
    centos 用户管理
    rsync 实验
    文件共享和传输
    PAT 1109 Group Photo
    PAT 1108 Finding Average
    PAT 1107 Social Clusters
    PAT 1106 Lowest Price in Supply Chain
    PAT 1105 Spiral Matrix
    PAT 1104 Sum of Number Segments
    PAT 1103 Integer Factorization
  • 原文地址:https://www.cnblogs.com/-mrl/p/13885115.html
Copyright © 2011-2022 走看看