侧边栏壁纸
博主头像
Z同学博主等级

工作磨平激情前,坚持技术的热忱。 欢迎光临Z同学的技术小站。 分享最新的互联网知识。

  • 累计撰写 274 篇文章
  • 累计创建 55 个标签
  • 累计收到 74 条评论
Git

Git 的基本使用(三)代码提交与各种撤销操作

Z同学
2022-04-07 / 0 评论 / 1 点赞 / 153 阅读 / 1,198 字
温馨提示:
本文最后更新于 2022-04-07,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

介绍

本篇继续讲解Git的一些常见使用和学习。弄明白如何进行快捷的提交代码,提交后的信息进行撤销和修改操作等。

前言

我们知道,提交代码到git仓库时,会需要先进行git add 将内容提交到暂存区,然后再进行git commit 将暂存区的内容提交到本地仓库。最后再进行git push 将内容提交到远程仓库。

详情可以通过Git 基础-仓库文件的每次修改和操作流程介绍,明白工作副本的含义 (zinyan.com) 了解。

但是有时候这样每次修改后提交操作需要进行三次指令,会让人觉得太过繁琐。针对这种情况,Git提供了一个跳过使用暂存区的方法。

1. 跳过暂存区

如果不想每次先进行add 添加后,再执行commit操作。

我们可以使用跳过暂存区域的方法,将commit和add 结合使用。

git commit -a -m '这是一个跳过暂存的示例,直接提交'

关键字就是: -a 添加该选项后,Git会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过git add的步骤。

但是这个操作有一个前提:该文件已经被跟踪过

不适用于新创建的文件。适用于已经版本控制后,再次进行编辑修改的文件。

2. 移除文件

主要介绍在Git中删除文件的各种操作,或从Git中移除本地不删除等等。

我们直接删除文件后,通过git status 就会看到相关删除记录。示例如下:

image-20220407114929287

Git 提示了两个建议:

  • git add/ rm : 将我们的删除命令提交
  • git restore : 放弃本次删除操作(内容会回滚)

git add 我们知道。将本次删除操作提交到暂存区。之后我们通过commit就可以将该删除操作同步到仓库中了。

那么git rm是用来干啥的呢?它是专门用来记录移除文件操作的,例如:

image-20220407115416276

我们执行rm之后,再执行push 的话,就会出现:

image-20220407115556647

没有要更新的。我们会发现远程仓库中该文件并没有被删除,但是我们本地已经进行了清理。而我们从远端拉取文件时,却不会拉取到我们删除的文件。

那是因为我们需要进行commit之后才会将操作提交到远端。

2.1 将暂存区文件添加到过滤

我们移除文件的时还有一种情况,从Git仓库中删除,但是本地工作目录中保留,也就是说不想Git再记录该文件了。操作很简单,将该文件添加到.gitignore文件中就可以了。而通过命令操作主要是 --cached指令。示例:

git rm --cached Libmppeg.so	

该方式会将暂存区里面的记录给删除,但是不会影响本地存储。

3. 撤销 git restore

当我们在工作目录下操作时,一旦执行了add命令后信息就被git进行了记录。而restore就是用来撤销add操作的。

它主要的功能为:将修改的内容,撤销更改回滚到上次提交之后的结果。

使用关键字如下:git restore

那么我们已经提交到add中的代码,部分有问题我们只想从暂存区撤销,但是工作区的文件不想更改,那么可以使用--staged 关键字。

示例:git restore --staged XXXX

1

评论区