[每周一更]-(第44期):GIT版本控制之忽略文件

news2025/1/14 1:09:44

在这里插入图片描述

基础概念

在 Git 中,可以通过 .gitignore 文件来指定不需要纳入版本控制的文件或文件夹,这些被忽略的文件或文件夹不会被提交到仓库中。

在项目根目录下创建一个名为 .gitignore 的文件,并在其中列出需要忽略的文件或文件夹。一些常见的示例:

# 忽略所有 .a 文件
*.a

# 但是要跟踪 lib.a,即使之前忽略了所有 .a 文件
!lib.a

# 忽略所有 .txt 文件
*.txt

# 忽略 doc/ 目录下的所有文件
doc/

# 仅仅忽略 doc/notes.txt 文件
doc/notes.txt

# 忽略 build/ 目录下的所有文件夹
build/*/

# 忽略 doc/build/ 目录下的所有文件
doc/build/*

# 忽略文件名为 README.md 的文件
README.md

# 忽略所有扩展名为 .log 的文件
*.log

在 .gitignore 文件中使用 # 符号开头的行表示注释,这些行会被 Git 忽略。
使用 ! 符号可以取消忽略,例如在上面的示例中取消忽略了 lib.a 文件。

需要注意的是,.gitignore 文件只能忽略尚未被 Git 跟踪的文件。如果文件已经被纳入版本控制中,那么 .gitignore 文件对它将不起作用。
此时可以使用 git rm --cached 命令将该文件从 Git 中移除,并加入到 .gitignore 文件中。

GIT版本控制中删除文件

参考:https://zongren.me/2016/05/23/remove-files-from-git-version-controll/

如果你想把一个文件从版本控制中移除,并且保留本地的文件,首先需要把这个文件加入到gitignore文件中。然后执行以下命令就可以了。

git rm file_path --cached

以上命令将file_path所代表的文件从版本控制中删除,并保留本地文件,此外还要进行commit操作才能将服务器端的文件删掉。
如果想把一个文件夹从版本控制中删除并保留本地的文件,只需在上述命令的基础上加上-r参数,即

git rm -r folder_path --cached

如果想把所有gitignore中的文件从版本控制中删除的话,需要执行以下两个命令,即先移除所有文件,再执行添加所有文件(这次会忽略gitignore中的文件)。

git rm -r . --cached
git add .

GIT如何移除某文件的版本控制

1、还没有加到版本控制中
(1)还没有git add

在 .gitignore中添加

(2)已经git add

 先   git  rm  -r  --cached   文件
 在 .gitignore中添加

2、已经加到版本控制中

 先   git  rm  -r  --cached   文件  
 在   .gitignore中添加
 最后  git commit -m  '提交.gitignore'

注解:
1、git update-index --assume-unchanged 这个命令能让Git假装看不见目标文件的改变,但文件本身还是在 Git 的历史记录里的,所以团队的每个人在 fetch 的时候都会拉到目标 文件 的 变更。团队要每次对运行改命令,否则忽略不掉

    git update-index --assume-unchanged /path/to/file    #忽略跟踪
    git update-index --no-assume-unchanged /path/to/file #恢复跟踪

2、修改.gitignore添加完忽略文件,然后执行下列命令

    git rm -r --cached .  
    git add .  
    git commit -m 'update .gitignore'
    也是假装让git看不见文件,要团队中每个人都运行改命令,否则忽略不掉

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1340973.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java设计模式学习之【中介者模式】

文章目录 引言中介者模式简介定义与用途实现方式 使用场景优势与劣势在Spring框架中的应用聊天室示例代码地址 引言 想象一下一座忙碌的机场,各种飞机需要起飞、降落,而不同的飞行活动之间必须互不干扰。如果没有一个统一的控制系统,这将是一…

Vue ThreeJs实现银河系行星运动

预览 可通过右上角调整参数&#xff0c;进行光影练习 代码 <template><div id"body"></div> </template> <script>import * as THREE from three import { OrbitControls } from three/examples/jsm/controls/OrbitControls import …

FontsTest.java

package fonts;import java.awt.Font; import java.awt.GraphicsEnvironment;/*** Font测试* * 不同字体在不同操作系统是不一样的&#xff0c;更新* * linux&#xff1a; https://blog.csdn.net/spencer_tseng/article/details/135232675windows&#xff1a; https://blog.cs…

48道Linux面试题

本博客将汇总 Linux 面试中常见的题目&#xff0c;并提供详细的解答。 文章目录 1、绝对路径用什么[符号表](https://so.csdn.net/so/search?q符号表&spm1001.2101.3001.7020)示&#xff1f;当前目录、上层目录用什么表示&#xff1f;主目录用什么表示? 切换目录用什么命…

活动回顾 (下) | 机器学习系统趋势研判,大咖金句汇总

作者&#xff1a;三羊、李宝珠、李玮栋、Yudi、xixi 编辑&#xff1a;李宝珠 在大模型时代的浪潮中&#xff0c;机器学习系统正经历着前所未有的变革。模型规模的急剧膨胀&#xff0c;让我们见证了 AI 能力的巨大提升&#xff0c;然而这种提升不仅为各个领域带来了新的机遇&…

Java版企业电子招标采购系统源码——鸿鹄电子招投标系统的技术特点

在数字化时代&#xff0c;采购管理也正经历着前所未有的变革。全过程数字化采购管理成为了企业追求高效、透明和规范的关键。该系统通过Spring Cloud、Spring Boot2、Mybatis等先进技术&#xff0c;打造了从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通过…

六、Redis 分布式系统

六、Redis 分布式系统 六、Redis 分布式系统6.1 数据分区算法6.1.1 顺序分区6.1.2 哈希分区 6.2 系统搭建与运行6.2.1 系统搭建6.2.2 系统启动与关闭 6.3 集群操作6.3.1 连接集群6.3.2 写入数据6.3.3 集群查询6.3.4 故障转移6.3.5 集群扩容6.3.6 集群收缩 6.4 分布式系统的限制…

两张图片沿着斜对角线合并成一张图片

在图像融合领域,论文中的对比算法可视化,需要将红外图像和可见光图像沿着斜对角线合并成一张图片。 红外与可见光图像举例: 然后做出这样的效果: 用Python的PIL库,将两张图片沿着斜对角线合并成一张图片。 from PIL import Image, ImageDraw# 两张图片的路径 image1_pat…

elasticsearch系列三:常用查询语法

概述 前几篇我们介绍了如何在es中存储数据&#xff0c;如何更加合理的存储数据&#xff0c;今天我们来说下常用的查询语法&#xff0c;如何实现mysql中的等于、大于、小于、and 、or、in等方式。 案例 我们以kibana为例&#xff0c;比如sql中的等于&#xff0c;在es中可以用…

使用cmake配置matplotlibcpp生成VS项目

https://gitee.com/feboreigns/matplotlibcpp 这篇文章需要一些cmake基础&#xff0c;python基础&#xff0c;visualstudio基础 准备环境 注意如果在VS平台使用必须要手动下载python&#xff0c;不能使用conda里面的&#xff0c;比如3.8版本&#xff0c;因为conda里面没有py…

阿里云PolarDB数据库费用价格表

阿里云数据库PolarDB租用价格表&#xff0c;云数据库PolarDB MySQL版2核4GB&#xff08;通用&#xff09;、2个节点、60 GB存储空间55元5天&#xff0c;云数据库 PolarDB 分布式版标准版2核16G&#xff08;通用&#xff09;57.6元3天&#xff0c;阿里云百科aliyunbaike.com分享…

k8s二进制部署--部署高可用

连接上文 notready是因为没有网络&#xff0c;因此无法创建pod k8s的CNI网络插件模式 1.pod内部&#xff0c;容器与容器之间的通信。 在同一个pod中的容器共享资源和网络&#xff0c;使用同一个网络命名空间。 2.同一个node节点之内&#xff0c;不同pod之间的通信。 每个pod都…

rs61 外置声卡 win10 驱动

官方的是32位xp的驱动&#xff0c;win10已经无法使用。 USB\VID_08BB&PID_2900 | Device Drivers (oemdrivers.com) 硬件ID和雅马哈sound-yamaha-mg10xu-usb-driver的一样&#xff0c;下载驱动安装测试正常 https://usa.yamaha.com/files/download/software/9/1549789/YS…

深度解析TB用户购物行为:系统搭建与优化

深度解析TB用户购物行为&#xff1a;系统搭建与优化 引言系统搭建数据集技术选型 系统功能1. 用户维度分析2. 产品维度分析3. 聚类结果分析 创新点系统优化与展望优化展望 结语 引言 在电商时代&#xff0c;了解用户购物行为并从中提取有价值的信息对于企业制定营销策略和优化…

算法基础之计数问题

计数问题 核心思想&#xff1a; 数位dp / 累加 累加 ​ 分情况讨论 &#xff1a; xxx 000 ~ abc –1 yyy 000 ~ 999 共 abc * 1000 种 特别地&#xff0c;当枚举数字0时 (找第4位为0的数) 前三位不能从000开始了 否则没这个数不合法(有前导零) xxx abc 2.1. d < 1 , 不…

uniapp实现前端银行卡隐藏中间的数字,及隐藏姓名后两位

Vue 实现前端银行卡隐藏中间的数字 主要应用了 filters过滤器 来实现效果 实现效果&#xff0c;如图&#xff1a; <template><div><div style"background-color: #f4f4f4;margin:50px 0 0 460px;width:900px;height:300px;"><p>原来&#…

算法导论复习纲要

函数 1. 上界下界&#xff0c;紧确界的定义 2. 求解递推式&#xff0c;代入法&#xff0c;递归树法&#xff0c;主方法 分治算法 动态规划 1. 切割钢条&#xff1a;递归方法&#xff0c;动态的自上而下&#xff0c; 2. 矩阵乘法&#xff1a;最优子结构性的证明&#xff0c…

听GPT 讲Rust源代码--src/tools(28)

File: rust/src/tools/clippy/clippy_lints/src/operators/identity_op.rs 文件路径 rust/src/tools/clippy/clippy_lints/src/operators/identity_op.rs 中的作用是定义了 IdentityOp 类型的 Clippy lint 规则&#xff0c;用于检查代码中是否存在不必要的恒等操作符&#xff0…

【AI+MJ提示词】Midjourney提示词系统化-反乌托邦(Dystopian)和技术朋克

反乌托邦&#xff08;Dystopian&#xff09;和技术朋克 反乌托邦&#xff08;Dystopian&#xff09;和技术朋克&#xff08;Techno Punk&#xff09;都是描述未来世界的文学流派。 反乌托邦描述的未来世界通常是一个被政府或强大机构严格控制的世界&#xff0c;人们的生活被监…

攻防世界—no-strings-attached

# 攻防世界—no-strings-attached 介绍下——IDA内置脚本 shiftF12 收获——要一个一个大致看出代码在干嘛 先运行一遍 int __cdecl main(int argc, const char **argv, const char **envp) { setlocale(6, &locale); banner(); prompt_authentication(); authenti…