Git 学会git,探索GitHub,掌握新知识

Posted IT_Holmes

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git 学会git,探索GitHub,掌握新知识 相关的知识,希望对你有一定的参考价值。

1.git的功能介绍

功能呢,也就三个部分:

本地库
暂存区
工作区

在这里插入图片描述

2.git和代码托管中心

git和代码托管中心是两个东西,使用git命令来操作代码托管中心的代码。

在局域网环境下,代码托管中心有:

GitLab服务器

在互联网外网环境下,代码托管中心有:

GitHub(国外服务器,访问很慢)
码云gitee(国内服务器,访问速度很快)

3.安装git(linux系统)

这里我使用的是ubuntu系统,安装git,直接使用的linux命令安装,如果是windows安装去官网下载就行。

可以使用git --version来查看是否安装。

4.git初始化

命令:

git init

这条命令就是初始化git本地库的命令。

在想要初始化的目录下面,执行这个命令。

然后,可以使用ls -lA来查看到隐藏文件 .git 。

.git里面包含很多信息,最重要的是config文件,下图便是config的信息。

在这里插入图片描述

5.设置git签名

这里说两种级别:项目级别(仓库级别),系统用户级别。

1.项目级别(仓库级别):仅在当前本地库范围有效。

git config user.name [名字]
git config user.email [电子邮件]

这里设置的基本信息就保存到了初始化本地库目录下的.git/config文件里了。

2.系统用户级别:登录当前操作系统的用户范围

git config --global user.name [名字]
git config --global user.email [电子邮件]

这里设置后,签名就保存到了用户家目录下面了。使用命令:cd ~,回到用户家目录下,执行命令:ls -lA,能找到一个.gitconfig文件,系统用户级别的签名就保存在这里面了。

上面这两个级别的优先级:

1.就近原则:二者都有时,项目级别优先使用。
2.如果只有系统用户级别,便使用系统用户级别。
3.二者都没有时,报错。

6.git 基本操作

1.git status

状态查看

2.git add [file_name]

添加到暂存区

3.git commit -m “commit 信息备注” [file_name]

git commit -m “commit 信息备注” [file_name]

从暂存区提交到本地库

4.git log

查看日志(历史纪录)

如果多屏幕显示了:

空格向下翻页
b 向上翻页 (back)
q 推出 (quit)

4.1 git log --pretty=oneline

git log --pretty=oneline

一行显示一个记录。
哈希值 , 指针 , 操作信息。

4.2 git log --oneline

git log --oneline

和上面命令差不多,但是哈希值取的是部分的。

4.3 git reflog

git reflog

这里多了一个指针需要移动的次数,例如:HEAD@{3}。

HEAD指针,是方便我们来引用的,前进或回退到指定的状态下。

在这里插入图片描述

5.git reset

5.1 git reset --hard [索引值(哈希值)]

git reset --hard [索引值(哈希值)]

5.1.1 基于索引值(哈希值)操作

这里个命令,便是用的HEAD指针来进行的指向的。
直接通过哈希值,这里可以说索引值,来指定返回到之前的状态就可以了。

5.1.2 基于 ^ 符号操作

这个 ^ 符号,只能往后退。
命令如下:

git reset --hard HEAD^(^可以多个)

这里的 ^ 符号可以添加多个,一个就回退上个状态,两个就回退到上上个状态,以此类推。

5.1.3 基于 ~ 符号操作

这个 ~ 符号,也是只能后退,但是它比 ^ 符号好用一些。可以随便回退到任何状态。

命令如下:

git reset --hard HEAD~10 (后退10个状态。)

5.2 reset命令的三个参数

5.2.1 --soft参数

–soft参数:

仅仅在本地库移动HEAD指针。

这里因为本地库改变了,所以git status会出现绿色状态。

5.2.2 --mixed参数

–mixed参数:

在本地库移动HEAD指针。
重置暂存区。

这里因为本地库和暂存区都改变了,工作区不变,所以git status会出现红色状态。

5.2.3 --hard参数

–hard参数:

在本地库移动HEAD指针。
重置暂存区。
重置工作区。

这里都进行改变,因此git status 不变。

5.2.4 删除文件并找回

删除文件并找回:
我们使用reset --hard [索引值]以及它的参数来实现找回被删除的文件,但是:删除前,文件存在时的状态已经提交到了本地库。

6.git diff

6.1 git diff [file_name]

在没有添加任何参数的情况下,是工作区文件和暂存区文件内进行比较。

6.2 git diff HEAD [file_name]

添加了HEAD参数情况下,是工作区和本地库进行比较。

6.3 git diff HEAD^ [file_name]

也可以联合以前的版本来进行比较,这里只是例举了和上个版本比较的命令。

以上是关于Git 学会git,探索GitHub,掌握新知识 的主要内容,如果未能解决你的问题,请参考以下文章

Git 学会git,探索GitHub,掌握新知识 完

git 打卡的第一天

Github操作与git分支管理

《学会教学》——讲授教学模式

更快速的学习掌握新知识

github上传代码