Git命令行操作

Git命令行操作分为本地库操作和远程库操作

本地库初始化

使用如下命令进行git本地库的初始化

git init

初始化的效果创建.git目录



.git目录中存放的是本地库相关的子目录和文件,不要删除也不要修改。

设置签名

形式:

用户名:HFR
Email地址:[email protected]

作用:区分不同开发人员的身份。
辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系。
命令:
项目级别/仓库级别:仅在当前本地库范围内有效。

git config user.name 
git config user.email

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

git config --global user.name
git config --global user.email

优先级:就近原则。项目级别的优先于系统用户级别。
不允许二者都没有。

使用

cat .git/config

查看用户信息


查看工作区,缓存区的状态

git status

将工作区的添加/修改添加到暂存区。

git add [file name]

将文件从缓存区中删除

git rm --cache 文件名

将文件从缓存区提交到本地库

git commit 文件名

此时如果我们修改文件,在调用status会发现以下的变化。



如果想在提交的时候不进入vim编辑器,可以使用如下命令

git commit -m "commit message" good.txt

可以使用如下命令查看过往提交的版本

git log

执行效果如下


以一种漂亮的方式显示

git log --pretty=oneline

只显示一部分Hash值

git log --oneline

显示指针的移动值

git reflog

前进后退

基于索引值操作
使用^符号
使用~符号

使用索引值操作

git reset --hard [局部索引值]

使用^符号

只能往后,不能往前。

git reset --hard HEAD^

一个^只能向后移动一位。

使用~符号

如果想往后后退n位,可以使用~

git reset --hard HEAD~n

reset三个参数的对比

  • soft参数:
    仅仅在本地库移动HEAD指针。
  • mixed参数:
    在本地库移动HEAD指针。
    重置缓存区
  • hard参数
    在本地库移动HEAD指针。
    重置暂存区
    重置工作区

添加到缓存区的删除文件找回

首先创建一个文件,取名叫apple.txt。之后将其放入缓存区中并提交到本地库。

此时我们将其在工作区中删除。

使用如下命令可以将在工作区中删除的文件,从缓存区中恢复过来

git reset --hard HEAD

前提:删除前,文件存在时的状态提交到了本地库。
操作

git reset --hard [指针位置]

指针位置是历史记录或者当前的位置。

  • 删除操作已经提交到本地库:指针位置指向历史记录。
  • 删除操作尚未提交到本地库:指针位置使用HEAD。

你可能感兴趣的:(Git命令行操作)