首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Git中忽略文件提交、取消文件追踪的方式(多中方式)

Git中忽略文件提交、取消文件追踪的方式(多中方式)

作者头像
超级小可爱
发布2023-02-23 09:43:04
发布2023-02-23 09:43:04
3.6K00
代码可运行
举报
文章被收录于专栏:小孟开发笔记小孟开发笔记
运行总次数:0
代码可运行

背景

使用Git进行版本管理多人协作开发,常会遇到我们本地可能存在一套自己的配置或者某些测试文件不需要提交到远端的情况。因此需要使用Git的相关命令进行文件排除或解除追踪。

下面介绍几种方式:

1.本地添加的文件,未纳入Git管理时

我们只需要在待排除的目录内新建.gitignore文件

然后编辑.gitignore文件,增加希望排除的文件内容即可

image.png

.gitignore内容参考:

代码语言:javascript
代码运行次数:0
运行
复制
/* 或者 *            代表目录下全部排除
.gitignore          排除自身
xxx.java            排除特定文件
2.本地文件已经纳入了Git管理,同时希望在目录内使用.gitignore进行排除时

首先执行如下命令:

代码语言:javascript
代码运行次数:0
运行
复制
# 移除当前目录下缓存(当前目录是指内嵌.gitignore所处目录)
git rm -rf --cached .

然后参照方式一进行操作即可

3.文件已经纳入了Git管理,想取消文件追踪,本地更改不提交(适用于文件比较分散或同种类型文件时)

取消追踪

代码语言:javascript
代码运行次数:0
运行
复制
# 关闭跟踪文件,修改不提交
git update-index --assume-unchanged /xxx/xxx.java
# 关闭追踪某个目录下的某种类型文件
git update-index --assume-unchanged /xxx/*.yml

恢复追踪

代码语言:javascript
代码运行次数:0
运行
复制
# 恢复跟踪文件,修改提交
git update-index --no-assume-unchanged /xxx/xxx.java
# 恢复追踪某个目录下的某种类型文件
git update-index --no-assume-unchanged /xxx/*.yml

当关闭追踪文件多了时,想找出来进行提交,可以使用如下命令:

代码语言:javascript
代码运行次数:0
运行
复制
# 列出关闭追踪的文件
git ls-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

未经允许不得转载:肥猫博客 » Git中忽略文件提交、取消文件追踪的方式(多中方式)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
    • 1.本地添加的文件,未纳入Git管理时
    • 2.本地文件已经纳入了Git管理,同时希望在目录内使用.gitignore进行排除时
    • 3.文件已经纳入了Git管理,想取消文件追踪,本地更改不提交(适用于文件比较分散或同种类型文件时)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档