当前位置: 首页 > news >正文

Git常用问题收集

gitignore 忽略文件夹 不生效

有时候我们接手别人的项目时,发现有的忽略不对想要修改,但发现修改忽略.gitignore后无效。原因是如果某些文件已经被纳入版本管理在.gitignore中忽略路径是不起作用的,这时候需要先清除本地缓存,然后重新添加并提交。
解决办法:

git rm -r --cached .
git add .
git commit -m ‘update .gitignore’
git push -u origin master

扩展出来讲,Git所管理的文件分为以下几种状态:

  • Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged.
  • Unmodify: 文件已经入库, 未修改, 即版本库中的文件快照内容与文件夹中完全一致. 这种类型的文件有两种去处, 如果它被修改, 而变为Modified. 如果使用git rm移出版本库, 则成为Untracked文件
  • Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 这个文件也有两个去处, 通过git add可进入暂存staged状态, 使用git checkout 则丢弃修改过, 返回到unmodify状态, 这个git checkout即从库中取出文件, 覆盖当前修改
  • Staged: 暂存状态. 执行git commit则将修改同步到库中, 这时库中的文件和本地文件又变为一致, 文件为Unmodify状态. 执行git reset HEAD filename取消暂存, 文件状态为Modified

详细参考:
https://www.cnblogs.com/thirteen-yang/p/13878118.html

github 提交大文件提示:git this exceeds GitHub’s file size limit of 100.00 MB

分两种情况,一种是当前提交文件过大忽略该文件即可,另外一种情况是以前的提交记录中存在大文件,那就需要如下指令:

git filter-branch -f --index-filter “git rm -rf --cached --ignore-unmatch rootfs/hdc-0.11.img” – --all

rootfs/hdc-0.11.img替换为文件过大的路径。当然我们还可以适用Git LFS上传大文件,但一般情况不建议该方案。

http://www.dtcms.com/a/115272.html

相关文章:

  • 创作五周年纪:数据之路的星光与远方
  • 深入理解 C++ 内置数组(四十三)
  • ​docker加docker compose实现软件快速安装启动
  • 唯美社区源码AM社区同款源码
  • 【MySQL | 八、 事务管理】
  • STM32F4系列ADC模块:原理、配置与实战应用
  • 【C++11(下)】—— 我与C++的不解之缘(三十二)
  • Python星球日记 - 第6天:列表与元组
  • 【大语言模型推理框架】VLLM
  • 左值与右值,空间与数据
  • Leetcode 3510. Minimum Pair Removal to Sort Array II
  • java基础自用笔记:文件、递归、常见的字符集、IO流
  • (done) 并行计算 CS149 Lecture1 (Why parallelism? Why efficiency?) (并行基本概念、硬件基础)
  • ctfshow VIP题目限免(后10题)
  • 消息队列(kafka 与 rocketMQ)
  • Llama 4 最新发布模型分析
  • rocketmq中的延迟队列使用详解
  • 深度学习图像分类数据集—十种西红柿病态叶识别分类
  • ISP算法从入门到精通:全面解析图像信号处理技术
  • 1Panel安装失败 国内docker安装失败
  • Qt -信号与槽
  • 第五章:架构安全性_《凤凰架构:构建可靠的大型分布式系统》
  • 掌握 JSON 到表格转换:全面指南
  • Neo4j基本命令使用
  • TPS入门DAY02 服务器篇
  • 剑指Offer(数据结构与算法面试题精讲)C++版——day6
  • lerobot[评估策略,训练策略]
  • C++ 标准库 vector(三十七)
  • (51单片机)独立按键控制流水灯LED流向(独立按键教程)(LED使用教程)
  • day40——种花问题(LeetCode-605)