【前端】Git 常用

文章目录

  • [一、git 配置](#一、git 配置)
    • [1.1 查看系统配置](#1.1 查看系统配置)
    • [1.2 查看当前用户配置](#1.2 查看当前用户配置)
    • [1.3 查看当前git用户名](#1.3 查看当前git用户名)
    • [1.4 查看当前git邮箱](#1.4 查看当前git邮箱)
    • [1.5 查看当前仓库配置信息](#1.5 查看当前仓库配置信息)
    • [1.6 修改git用户名](#1.6 修改git用户名)
    • [1.7 修改git邮箱](#1.7 修改git邮箱)
  • [二、git 常用命令](#二、git 常用命令)
    • [2.1 git init](#2.1 git init)
    • [2.2 git clone](#2.2 git clone)
    • [2.3 git status](#2.3 git status)
    • [2.4 git add](#2.4 git add)
    • [2.5 git commit](#2.5 git commit)
    • [2.5 git log](#2.5 git log)
    • [2.6 git pull](#2.6 git pull)
    • [2.7 git push](#2.7 git push)
    • [2.8 git fetch](#2.8 git fetch)
  • 三、分支
    • [3.1 git branch](#3.1 git branch)
    • [3.2 git checkout](#3.2 git checkout)
    • [3.3 git merge](#3.3 git merge)
  • 四、回滚
    • [4.1 仓库+暂存区回滚](#4.1 仓库+暂存区回滚)
    • [4.2 暂存区回滚](#4.2 暂存区回滚)
    • [4.3 仓库回滚](#4.3 仓库回滚)
    • [4.4 本地+仓库+暂存区回滚](#4.4 本地+仓库+暂存区回滚)
    • [4.5 远程仓库回滚](#4.5 远程仓库回滚)

一、git 配置

查看当前git环境详细配置

git config -l

1.1 查看系统配置

git config --system --list

配置文件在git安装目录/etc/gitconfig

1.2 查看当前用户配置

git config --global --list

1.3 查看当前git用户名

git config user.name

1.4 查看当前git邮箱

git config user.email

1.5 查看当前仓库配置信息

git config --local --list

配置文件在:当前项目的/.git/config

1.6 修改git用户名

git config --global user.name "用户名"

1.7 修改git邮箱

git config --global user.email "邮箱"

二、git 常用命令

2.1 git init

当前目录新建一个仓库

 git init

2.2 git clone

克隆一个远程仓库

git clone [url]

2.3 git status

查看所有文件状态

git status

查看指定文件状态

git status [file-name]

2.4 git add

添加当前目录下的所有文件到暂存区:

git add .

将工作区被修改的文件和被删除的文件提交到暂存区,不包括新增的文件

u指update

git add -u .

将工作区被修改,被删除,新增的文件都提交到暂存区

-A指all

git add -A .

从工作区添加指定文件到暂存区

git add [file1] [file2] ...

2.5 git commit

提交暂存区到仓库区

git commit -m [message]

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

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

示例:git commit src/commit.js -m "提交commit.js修改"

2.5 git log

显示所有commit日志

git log

查看分支合并情况

git log --graph --pretty=oneline --abbrev-commit

查看分叉历史

git log --oneline --decorate --graph --all

查看最新3条commit日志数据

git log -3

2.6 git pull

从远程仓库拉取代码到工作区

git pull

2.7 git push

将文件提交到远程仓库

git push

强制提交

git push -f

推送当前本地分支到指定远程分支

git push origin [branch-name]

2.8 git fetch

下载远程仓库的所有变动

git fetch [remote]

三、分支

3.1 git branch

查看所有本地分支

git branch

查看所有远程分支

git branch -r

查看本地和远程的所有分支

git branch -a

新建一个分支,但依然停留在当前分支

git branch [branch-name]

新建一个分支,并切换到该分支

git checkout -b [branch-name]

删除分支

git branch -d [branch-name]

删除远程分支

git push origin --delete [branch-name]

3.2 git checkout

切换到指定分支,并更新工作区

git checkout [branch-name]

新建一个分支,并切换到该分支

git checkout -b [branch-name]

切换到上一个分支

git branch -

3.3 git merge

合并指定分支到当前分支

git merge [branch-name]

四、回滚

4.1 仓库+暂存区回滚

将仓库与暂存区回滚到指定版本,工作区不变

也就是说恢复到git add .之前的状态

不支持仅回退单个文件

命令:

git reset [HEAD]

HEAD说明:

  • HEAD 表示当前版本
  • HEAD^ 上一个版本
  • HEAD^^ 上上一个版本
  • HEAD^^^ 上上上一个版本

可以使用 ~数字表示

  • HEAD~0 表示当前版本
  • HEAD~1 上一个版本
  • HEAD^2 上上一个版本
  • HEAD^3 上上上一个版本示例:
  • 示例:
    回退上个版本

    git reset HEAD^
    或
    git reset HEAD~1
    

回退指定版本(版本号通过git log查看):

git reset 9e8f2f858ae03944bab4ac19c927699ba367b941

回退上上个版本:

  git reset HEAD^^
  或
  git reset HEAD~2

4.2 暂存区回滚

通过git add .添加到暂存区后,重置暂存区,与上一次commit保持一致,但工作区不变

撤回所有:

git reset

git reset HEAD

撤回指定文件:

git reset [file]

例:

git reset src/index.js

4.3 仓库回滚

已经通过git commit提交后,回滚到暂存区

也就是说,恢复到add后的状态

命令:

git reset --soft [HEAD]

HEAD说明与4.1一致

示例:回退上个版本

git reset --soft HEAD^
或
git reset --soft HEAD~1

4.4 本地+仓库+暂存区回滚

将本地、暂存、git仓库都回滚到指定版本

也就是所有内容都会恢复到上个版本,包括本地工作区内的所有修改

使用的时候要注意,它会删除回退点之前的所有信息

命令:

git reset --hard [HEAD]

HEAD说明与4.1一致

示例:

回退上个版本

git reset --hard HEAD^
或
git reset --hard hEAD~1

回退指定的版本

git reset --hard 4f0cf3710b839e31ce3b5093f0d8fb0ad36e8c95

4.5 远程仓库回滚

步骤:先将本地版本回退到上一个版本,再push推送到远程仓库

示例:

// 先回退本地仓库版本(注意--hard所有内容都会恢复到上个版本,包括本地工作区内的所有修改)
git reset --hard HEAD^
  
// 再提交到远程仓库
git push -f
相关推荐
给阿姨倒1杯卡布奇诺3 小时前
Git在多人开发中的常见用例
git
小超嵌入式笔记4 小时前
[教程]Gitee保姆级图文使用教程
git·gitee
突然暴富的我9 小时前
Git 的基本概念和使用方式。
前端·git·json·github
福星高照~11 小时前
Git、Github、tortoiseGit下载安装调试全套教程
git·github
C、空白格17 小时前
IDEA 2018提交Git之后撤销commit
java·git·intellij-idea
老衲有点帅18 小时前
Git 常用命令及其作用
git·github
肆·意20 小时前
Git安装以及环境配置(详细)
git
小远披荆斩棘21 小时前
Github与本地仓库建立链接、Git命令(或使用Github桌面应用)
git·github
Dongguabai21 小时前
使用 Git Hooks 防止敏感信息泄露
git
sun00770021 小时前
git 添加本地分支, clean
git