Git的使用

Posted howlet

tags:

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



1. 安装Git

Git官网下载安装包然后无脑安装,笔者这里使用Windows系统

技术图片




2. 配置文件

安装完后打开cmd输入下面两行命令来配置用户和邮箱

$ git config --global user.name "Howl"
$ git config --global user.email "1210911104@qq.com"

输入完后下面命令查看config

$ git config --global  --list

技术图片




3. 创建本地仓库

新建一个文件夹(笔者这里用LearnGit),在里面打开cmd,然后输入下面命令

$ git init

之后就会发现该目录下多了一个隐藏文件.git,这是git管理仓库用的,千万不要去动它

技术图片


  • 这里先说明一下工作区,缓存区,版本库的区别

我们平时打开文件的任务管理器是工作区,使用add之后是添加到缓存区,使用commit是添加到版本库中(add,commit后面会讲)

技术图片




4. add /commit/status/rm/diff

在LearnGit目录下新建一个readme.txt文件,里面写入 “第一次使用Git”


  • 然后使用下面命令把文件从工作区添加到缓存区
$ git add readme.txt


  • 接着使用下面命令把文件从缓存区添加到版本库,其中-m及其后面双引号里面的内容表示提交信息
$ git commit -m "it is my first time to commit"


  • 查看文件的状态
$ git status
  1. 新建文件后查看状态会发现,一个新文件没有被追踪,即没有被add

技术图片

  1. 使用add后查看状态会发现,有一个readme文件没有commit

技术图片

  1. 使用commit后查看状态会发现,没有需要commit的文件

技术图片


  • 删除文件——删除刚才的newfile文件,之后还需要commit才能把文件从版本库删除
$ git rm newfile.txt
$ git commit -m "delete newfile.txt"


  • 查看工作区,缓存区,版本库的区别

这里先创建一个diff.txt,里面写入 “这里是大家共有的”,然后使用add和commit

  1. 接着往diff.txt添加 “这里是工作区刚添加的” ,先不用add,然后使用下面命令
$ git diff -- diff.txt

会发现有红色和绿色字体,这些代表差异,并且这个命令是比较工作区和缓存的

  1. 把diff.txt添加到缓存区后再添加到版本库,之后再往里面写入 “这里是工作区添加的”,再使用下面命令
$ git diff HEAD  -- diff.txt

同样道理说明,这条命令是比较工作区和版本库的差异




5. 版本回退

1 使用下面命令来查看历史版本

$ git log --oneline

技术图片

最前面的一串东西是版本号,后面跟着的是提交信息,head代表当前所在版本


2 不知道大家还记不记得,最后面的it is my first time to commit对应的版本,我们只有一个readme.txt文件,当时还没有创建diff.txt文件拿来做对比 ,好了,我们就回退到那个版本

当前目录下的文件是这样的

技术图片

使用回退版本命令后

$ git reset --hard 0b6aa38

# --hard表示移动到需要回退的版本

技术图片

是不是就回退了,哈哈哈


3 人就是做作,如果我们回退错了呢?现在又想返回刚才的版本怎么办?没关系,按着下面步骤来

  • 输入下面命令,可以看到版本信息
$ git reflog

技术图片

  • 之后再使用回退命令就完事了,可以看到我们上一个版本的版本号是e701464
$ git reset --hard e701464

技术图片

你看版本就又回退回来了,完美!!!




以上是关于Git的使用的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段15——git命令操作一个完整流程

VSCode自定义代码片段15——git命令操作一个完整流程

如何管理在每个 git 版本中添加私有代码片段?

markdown Git代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段