• git 忽略文件提交的几种姿势


    大家都知道 git 忽略文件提交可以通过 .gitignore 中进行配置。但是有时这个配置并不能满足自己的需求。
    比如 package.json 中我修改了一些配置,但是这些配置只是适合我自己使用,而同事不喜欢用,我就希望我本地的 package.json 不提交到远程仓库。这时通过配置 .gitignore 也是不合理的,那么应该怎么办呢?

    下面就介绍4中忽略 git 提交的姿势:

    • .gitignore
      • 说明:显式地阻止提交文件。
      • 优势:.gitignore 文件本身提交至远程仓库,全组共享忽略文件配置。
      • 局限:如果项目已经存在远程仓库,即使被加入 .gitignore,仍然可以进行修改并提交。本地的修改会显示在 git status 结果中。
    • .git/info/exclude
      • 说明:显式地阻止提交文件。
      • 优势:exclude 文件本身不会提交至远程仓库,因此适合放一些个人定制的 「gitignore」 项目。
      • 局限:和 .gitignore 存在同样地局限。文件若已存在远程仓库,则本地修改仍可以提交至远程仓库。本地的修改会显示在 git status 结果中。
    • assume-unchanged
      • 说明:声明本地远程都不会修改这个文件。
      • 优势:git 直接跳过这些文件的处理以提升性能。文件不会出现在 git status。
      • 局限:不适合本地或远程需要修改的文件。本地会忽略掉之后远程文件的修改。
    • skip-worktree
      • 说明:声明忽略文件的本地修改。
      • 优势:本地可以对文件做一些个人定制。文件不会出现在 git status。
      • 局限:拉取远程文件更新,或切换分支时有可能出现冲突,需要撤销忽略后手动解决冲突。

    之前想的是通过 exclude 排除,后来才知道远程仓库上有的文件 exclude 也没用,应该用 skip-worktree。

  • 相关阅读:
    swarm集群搭建 及集群维护操作
    zabbix 告警说明
    yum 下载安装包
    mongdb常见操作
    cloudera5.16.1 离线安装
    centos7 安装hadoop-3.2.1
    rpcbind 启动报错
    ingress-nginx 安装
    Dubbo学习
    mybatis防止SQL注入
  • 原文地址:https://www.cnblogs.com/3body/p/15606388.html
Copyright © 2020-2023  润新知