git:三、git rm删除文件+gitignore忽略+git diff比较差异(附带详细步骤教程)

本文主要是介绍git:三、git rm删除文件+gitignore忽略+git diff比较差异(附带详细步骤教程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

git rm 删除文件

注意以下所有操作都只针对工作区和暂存区,如果需要删除后真正生效,还需要额外提交

git rm 某个文件名   

把文件从工作区和暂存区同时删除

git rm --cached 某个文件名 

把文件从暂存区删除,但保留在工作区中

git rm -r *

递归删除某个目录下的所有子目录和文件

gitignore忽略文件

一般需要忽略的文件

在这里插入图片描述

git diff 比较差异

git diff

比较工作区中被追踪的文件和暂存区的不同。

  1. 新创建一个文件test git diff,不进行git add,也不输入内容,那么输入git diff 不会显示任何内容,因为他不是工作区中被追踪的内容。
  2. 此时在文件test git diff里输入内容this is test1,再次输入git diff 也不会显示任何内容,因为他仍然不是工作区中被追踪的内容。
  3. 此时进行git add,那么输入git diff 不显示任何内容,因为此时工作区的内容和暂存区内容一致。
  4. 修改文件内容为this is test2后直接输入git diff,那么会显示内容如下
    在这里插入图片描述
    实际开发中主要看红色字和绿色字即可,前者表示暂存区的内容,后者表示工作区的内容。

git diff HEAD

比较工作区和仓库的不同

  1. 仍然是刚刚的文件,修改内容为this is test3,然后git add. git commit,此时本地仓库中是this is test3
  2. 然后修改内容为this is test2,然后git add,此时暂存区中是this is test2
  3. 再次修改内容为this is test1,此时工作区、暂存区、本地仓库分别为test1 2 3
  4. 然后输入git diff HEAD,那么会显示内容如下:
    在这里插入图片描述
    实际开发中主要看红色字和绿色字即可,前者表示仓库的内容,后者表示工作区的内容。

git diff --cached和git diff --staged

比较暂存区和仓库的不同
用刚刚的文件,不作任何修改,直接输入

git diff --cached

应该会显示如下:
在这里插入图片描述
直接输入

git diff --cached

应该会显示如下:
在这里插入图片描述
那–cached和–staged有什么不同?
没有任何不同,单纯是随着git的发展,一个命令有了两个名称而已

git diff commit1哈希值 commit2哈希值 和 git diff HEAD~ HEAD

比较提交之间的不同
新创建一个文件,名字叫testgitdiff

  1. 更改文件内容为this is commit a,然后git addgit commit -m 'commit a'
  2. 更改文件内容为this is commit b,然后git addgit commit -m 'commit b'
  3. 更改文件内容为this is commit c,然后git addgit commit -m 'commit c'

此时我们得到了三个提交,可以从pycharm等自带的git页面点进去每个提交,可以看到类似f7fbc36e之类的就是该次提交唯一的短哈希值
在这里插入图片描述
也可以输入命令git log得到每次提交的长哈希值。
同时可以看到HEAD此时位于commit c处,那么HEAD~1,表示倒数第二个提交就是在commit b,HEAD~2就是在commit a处。

在这里我们三个提交的信息如下:

提交短哈希长哈希离HEAD距离
commit a9c814a2e9c814a2e42d4417672097d9a786fc43abd31e044HEAD~2
commit b25daeaf325daeaf3456e9694f0b3cfb0cce17477f40a5fd5HEAD~1
commit cf7fbc36ef7fbc36ef975f9aba784079cc6d511acc6889b64HEAD

随便测几个吧~懂我意思就好
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

git diff 分支名1 分支名2

比较分支仓库之间的不同
使用git checkout -b testgit创建一个新分支,同时用git branch查看当前分支有哪些
在这里插入图片描述
可以看到我这里的演示环境还是比较干净的,只有这两个分支。然后当前处于testgit分支上

  1. 新创建一个文件,名叫gittest,输入git diff main testgit,没有输出,因为此时文件没有在testgit的仓库里
  2. 进行git add,输入git diff main testgit,没有输出,因为此时文件仍没有在testgit的仓库里
  3. 进行git commit,输入git diff main testgit,输出如下
    在这里插入图片描述
    第一行输出了具体是哪两个文件不同。

这篇关于git:三、git rm删除文件+gitignore忽略+git diff比较差异(附带详细步骤教程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/878471

相关文章

电脑不小心删除的文件怎么恢复?4个必备恢复方法!

“刚刚在对电脑里的某些垃圾文件进行清理时,我一不小心误删了比较重要的数据。这些误删的数据还有机会恢复吗?希望大家帮帮我,非常感谢!” 在这个数字化飞速发展的时代,电脑早已成为我们日常生活和工作中不可或缺的一部分。然而,就像生活中的小插曲一样,有时我们可能会在不经意间犯下一些小错误,比如不小心删除了重要的文件。 当那份文件消失在眼前,仿佛被时间吞噬,我们不禁会心生焦虑。但别担心,就像每个问题

VMware9.0详细安装

双击VMware-workstation-full-9.0.0-812388.exe文件: 直接点Next; 这里,我选择了Typical(标准安装)。 因为服务器上只要C盘,所以我选择安装在C盘下的vmware文件夹下面,然后点击Next; 这里我把√取消了,每次启动不检查更新。然后Next; 点击Next; 创建快捷方式等,点击Next; 继续Cont

(超详细)YOLOV7改进-Soft-NMS(支持多种IoU变种选择)

1.在until/general.py文件最后加上下面代码 2.在general.py里面找到这代码,修改这两个地方 3.之后直接运行即可

Java注解详细总结

什么是注解?         Java注解是代码中的特殊标记,比如@Override、@Test等,作用是:让其他程序根据注解信息决定怎么执行该程序。         注解不光可以用在方法上,还可以用在类上、变量上、构造器上等位置。 自定义注解  现在我们自定义一个MyTest注解 public @interface MyTest{String aaa();boolean bbb()

Steam邮件推送内容有哪些?配置教程详解!

Steam邮件推送功能是否安全?如何个性化邮件推送内容? Steam作为全球最大的数字游戏分发平台之一,不仅提供了海量的游戏资源,还通过邮件推送为用户提供最新的游戏信息、促销活动和个性化推荐。AokSend将详细介绍Steam邮件推送的主要内容。 Steam邮件推送:促销优惠 每当平台举办大型促销活动,如夏季促销、冬季促销、黑色星期五等,用户都会收到邮件通知。这些邮件详细列出了打折游戏、

比较学习难度:Adobe Illustrator、Photoshop和新兴在线设计平台

从入门设计开始,几乎没有人不知道 Adobe 公司两大设计软件:Adobe Illustrator和 Photoshop。虽然AI和PS很有名,有一定设计经验的设计师可以在早期探索和使用后大致了解AI和PS的区别,但似乎很少有人会系统地比较AI和PS。目前,设计软件功能多样,轻量级和网页设计软件已成为许多设计师的需求。对于初学者来说,一篇有针对性的AI和PS比较总结文章具有非常重要的指导意义。毕竟

X-AnyLabeling使用教程

1.AI 模型自动分割标注使用教程 2.AI 模型自动目标检测标注使用教程

气象站的种类和应用范围可以根据不同的分类标准进行详细的划分和描述

气象站的种类和应用范围可以根据不同的分类标准进行详细的划分和描述。以下是从不同角度对气象站的种类和应用范围的介绍: 一、气象站的种类 根据用途和安装环境分类: 农业气象站:专为农业生产服务,监测土壤温度、湿度等参数,为农业生产提供科学依据。交通气象站:用于公路、铁路、机场等交通场所的气象监测,提供实时气象数据以支持交通运营和调度。林业气象站:监测林区风速、湿度、温度等气象要素,为林区保护和

基于Java医院药品交易系统详细设计和实现(源码+LW+调试文档+讲解等)

💗博主介绍:✌全网粉丝10W+,CSDN作者、博客专家、全栈领域优质创作者,博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 🌟文末获取源码+数据库🌟 感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人  Java精品实战案例《600套》 2023-2025年最值得选择的Java毕业设计选题大全:1000个热

青龙面板2.9之Cdle傻妞机器人编译教程

看到有的朋友对傻妞机器人感兴趣,这里写一下傻妞机器人的编译教程。 第一步,这里以linux amd64为例,去官网下载安装go语言安装包: 第二步,输入下方指令 cd /usr/local && wget https://golang.google.cn/dl/go1.16.7.linux-amd64.tar.gz -O go1.16.7.linux-amd64.tar.gz