git的学习3

news/2024/11/28 2:59:13/

文章目录

  • 一、git status 命令
  • 二、git diff 命令
  • 三、git commit 命令
  • 四、git reset 命令
  • 五、git rm 命令
  • 六、git mv 命令
  • 七、提交日志
    • 1、Git 查看提交历史
    • 2、git blame
  • 总结

提交与修改部分

一、git status 命令

git status 命令用于查看在你上次提交之后是否有对文件进行再次修改。

在这里插入图片描述

AM 状态的意思是这个文件在我们将它添加到缓存之后又有改动。

二、git diff 命令

git diff 命令比较文件的不同,即比较文件在暂存区和工作区的差异。

git diff 命令显示已写入暂存区和已经被修改但尚未写入暂存区文件的区别。

git diff 有两个主要的应用场景。
尚未缓存的改动:git diff
查看已缓存的改动: git diff --cached
查看已缓存的与未缓存的所有改动:git diff HEAD
显示摘要而非整个 diff:git diff --stat

使用 git status 查看状态:

$ git status -s
A  README
AM hello.php
$ git diff
diff --git a/hello.php b/hello.php
index e69de29..69b5711 100644
--- a/hello.php
+++ b/hello.php
@@ -0,0 +1,3 @@
+<?php
+echo 'www.runoob.com';
+?>

git status 显示你上次提交更新后的更改或者写入缓存的改动, 而 git diff 一行一行地显示这些改动具体是啥。

三、git commit 命令

git commit 命令将暂存区内容添加到本地仓库中。

提交暂存区到本地仓库中:

git commit -m [message]

[message] 可以是一些备注信息。

提交暂存区的指定文件到仓库区:

$ git commit [file1] [file2] ... -m [message]

-a 参数设置修改文件后不需要执行 git add 命令,直接来提交

$ git commit -a

设置提交代码时的用户信息
开始前我们需要先设置提交的用户信息,包括用户名和邮箱:

$ git config --global user.name 'runoob'
$ git config --global user.email test@runoob.com

如果去掉 --global 参数只对当前仓库有效。
提交修改
接下来我们就可以对 hello.php 的所有改动从暂存区内容添加到本地仓库中。

以下实例,我们使用 -m 选项以在命令行中提供提交注释。

$ git add hello.php
$ git status -s
A  README
A  hello.php
$ git commit -m '第一次版本提交'
[master (root-commit) d32cf1f] 第一次版本提交2 files changed, 4 insertions(+)create mode 100644 READMEcreate mode 100644 hello.php

现在我们已经记录了快照。如果我们再执行 git status:

在这里插入图片描述

四、git reset 命令

git reset 命令用于回退版本,可以指定退回某一次提交的版本。

git reset 命令语法格式如下:

git reset [--soft | --mixed | --hard] [HEAD]

–mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。

git reset  [HEAD] 

实例:

$ git reset HEAD^            # 回退所有内容到上一个版本  
$ git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本  
$ git  reset  052e           # 回退到指定版本

–soft 参数用于回退到某个版本

git reset HEAD

git reset HEAD 命令用于取消已缓存的内容。
在这里插入图片描述在这里插入图片描述

五、git rm 命令

git rm 命令用于删除文件。

如果只是简单地从工作目录中手工删除文件,运行 git status 时就会在 Changes not staged for commit 的提示。

git rm 删除文件有以下几种形式:

1、将文件从暂存区和工作区中删除:

git rm <file>

如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f。

强行从暂存区和工作区中删除修改后的 runoob.txt 文件:

git rm -f runoob.txt 

如果想把文件从暂存区域移除,但仍然希望保留在当前工作目录中,换句话说,仅是从跟踪清单中删除,使用 --cached 选项即可:
在这里插入图片描述

六、git mv 命令

git mv 命令用于移动或重命名一个文件、目录或软连接。

git mv [file] [newfile]

如果新文件名已经存在,但还是要重命名它,可以使用 -f 参数:

git mv -f [file] [newfile]

我们可以添加一个 README 文件(如果没有的话):

$ git add README 

然后对其重命名:

$ git mv README  README.md
$ ls
README.md

七、提交日志

1、Git 查看提交历史

Git 提交历史一般常用两个命令:

git log - 查看历史提交记录。
git blame - 以列表形式查看指定文件的历史修改记录。
git log

在使用 Git 提交了若干更新之后,又或者克隆了某个项目,想回顾下提交历史,我们可以使用 git log 命令查看。

我们可以用 --oneline 选项来查看历史记录的简洁的版本。

$ git log --oneline

你也可以用 --reverse 参数来逆向显示所有日志。

$ git log --reverse --oneline

2、git blame

如果要查看指定文件的修改记录可以使用 git blame 命令,格式如下:**

git blame <file>

git blame 命令是以列表形式显示修改记录,如下实例:

$ git blame README 
^d2097aa (tianqixin 2020-08-25 14:59:25 +0800 1) # Runoob Git 
db9315b0 (runoob    2020-08-25 16:00:23 +0800 2) # 你好,世界!

以列表形式查看指定文件的历史修改记录

学习来自发“https://www.runoob.com”

总结

沧海月明珠有泪,蓝田日暖玉生烟。


http://www.ppmy.cn/news/69545.html

相关文章

360+ChatGLM联手研发中国版“微软+OpenAI”

文章目录 前言360与智谱AI强强联合什么是智谱AI360智脑360GLM与360GPT大模型战略布局写在最后 前言 5月16日&#xff0c;三六零集团&#xff08;下称“360”&#xff09;与智谱AI宣布达成战略合作&#xff0c;双方共同研发的千亿级大模型“360GLM”已具备新一代认知智能通用模…

BEV(0)---Transformer

1 Transformer Transformer是一个Sequence to Sequence model&#xff0c;特别之处在于它大量用到了self-attention&#xff0c;替代了RNN&#xff0c;既考虑了Sequence的全局信息也解决了并行计算的问题。 1.1 self-attention&#xff1a; ①. 输入x1 ~ x4为一个sequence&…

什么是SpringBoot自动配置

概述&#xff1a; 现在的Java面试基本都会问到你知道什么是Springboot的自动配置。为什么面试官要问这样的问题&#xff0c;主要是在于看你有没有对Springboot的原理有没有深入的了解&#xff0c;有没有看过Springboot的源码&#xff0c;这是区别普通程序员与高级程序员最好的…

【2023/05/17】smalltalk

Hello&#xff01;大家好&#xff0c;我是霜淮子&#xff0c;2023倒计时第12天。 Share His own morning are new surprises to God. 译文&#xff1a; 神自己的清晨&#xff0c;在他自己看来也是新奇的。 Life finds its wealth by the claims of the world,and its worth…

learn C++ NO.4 ——类和对象(2)

1.类的6个默认成员函数 1.1.默认成员函数的概念 在 C 中&#xff0c;如果没有显式定义类的构造函数、析构函数、拷贝构造函数和赋值运算符重载函数&#xff0c;编译器会自动生成这些函数&#xff0c;这些函数被称为默认成员函数。 class Date { };初步了解了默认成员函数&am…

【啃书C++Primer5】-编写一个简单C++程序

每个C程序都包含一个或多个函数(function)&#xff0c;其中一个必须命名为main。操作系统通过调用main来运行C程序。下面是一个非常简单的main函数&#xff0c;它什么也不干&#xff0c;只是返回给操作系统一个值: int main() {return 0; }一个函数的定义包含四部分:返回类型(r…

springboot+vue留守儿童爱心网站(源码+文档)

风定落花生&#xff0c;歌声逐流水&#xff0c;大家好我是风歌&#xff0c;混迹在java圈的辛苦码农。今天要和大家聊的是一款基于springboot的留守儿童爱心网站。项目源码以及部署相关请联系风歌&#xff0c;文末附上联系信息 。 &#x1f495;&#x1f495;作者&#xff1a;风…

【Spring框架全系列】SpringBoot配置日志文件

&#x1f367;&#x1f367;哈喽&#xff0c;大家好&#xff0c;我是小浪。那么上篇博客我们学习了SpringBoot配置文件的相关操作&#xff0c;本篇博客我们将学习一个新的知识点&#xff0c;SpringBoot日志文件。&#x1f5a5;&#x1f5a5; &#x1f4f2;目录 一、日志是什么…