当前位置: 首页 > 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上传大文件,但一般情况不建议该方案。

相关文章:

  • 创作五周年纪:数据之路的星光与远方
  • 深入理解 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安装失败
  • 郑州电商网站建设/浏览器下载安装2022最新版
  • 云主机做网站域名打不开/平台推广引流怎么做
  • 灯塔网站建设/友情链接互换网站
  • 政务网站建设规范/微信怎么推广
  • 高端网站建设免费分析/网络推广与推广
  • 预约网站如何自己做/樱桃bt官网