git回滚到上一个版本_Git基础使用教程

01

Git简介

Git是一个免费的开源分布式版本控制系统,它可以快速高效地处理从小型到大型的项目。简单点说就是:git分布式版本控制工具(管理代码版本)。我们常用的Git平台有:Gitee(码云)、GitLab、GitHub等。

02

下载Git

这里提供Git下载地址:https://git-scm.com/downloads

03

Gitee配置SSH公钥

  • 注册(用邮箱注册),并登录到Gitee后,鼠标移至右上角头像,下拉选项中选择 `设置`

  • 左侧菜单栏中选择SSH公钥,在右侧添加公钥

  • 怎么生成本机的公钥?请查看:https://gitee.com/help/articles/4181

04

Git日常操作

 克隆代码(把远程仓库拉取到本地):git clone 仓库地址
 查看仓库状态:git status
 提交工作区代码到暂存区:git add 文件路径或者.(所有文件)
 提交暂存区代码到历史记录区:git commit -m "本次提交的信息提示"
 提交历史记录区的历史提交记录到远程仓库:git push origin 分支名称
 注意点:
  git提示的信息里面只要有fatal或者error这两个词随便一个,都是执行git命令失败了

05

创建项目与分支

  • 在gitee中创建项目(例如创建了 demo222 这个项目),执行以下命令:
//克隆仓库到本地
  git clone git@gitee.com:codesohigh/demo222.git
//检查当前分支
  git branch
  • 一般此时是master分支,但我们开发阶段一般用dev等其他分支,所以我们:
  git checkout -b dev
  
  // git checkout 命令加上 -b 参数,表示创建并切换,以上操作相当于:
  git branch dev
  git checkout dev
  • 第一个注意的点:

        在仓库没有初始化前,如果需要检查分支,一定要记住这句话:

        未曾commit的仓库是无法检查分支的!

  •  第二个注意点:实际上git checkout  不是切换分支的最佳选择,我们使用git switch 会更好:
  git switch -c dev //创建并切换到新的dev分支
  git switch dev //切换到已有的dev分支

06

文件提交

  • 创建 index.js 文件,随便写点内容,提交:
  git add .
  git commit -m "修改了index.js"
  git push origin dev
  • 此时你会发现,git checkout master 切回master分支后,index.js这份文件会消失,因为当前分支不存在这个文件。

07

分支合并

  • 假设当前项目已经完成,我们想要把dev分支合并到master,可以在master分支下使用:
  git merge dev
  • 此时,你会看到,项目中又有 index.js 了。

01

版本回滚

  • 使用 git switch -c dev1 创建新的dev1分支,稍微修改dev1中的index.js,并且提交到远程仓库。

  • 我们提交完成后,发现自己不想用当前代码,想回滚到上一次的代码,怎么办呢?

  //查看当前项目提交的所有版本(含所有分支的操作)
  git log
  //git log 会出现很详细的信息,如果我们只想简单看看版本号,可以使用
  git log --pretty=oneline
  • 我们会得到:

ab124c95c15ac0d4cfb8b9b6485f6f9a.png

  • 如果我们只想回滚到指定版本,可以使用:
  git reset --hard 版本号前几位
  • 这里只需要写id号的前几个字母与数字就行,没必要全写,git会自动去检索。
  • 但此时,我们再一次查看所有版本,发现:

a730337dfbb33142f14937b856291de9.png

  • 最新写的那个丢失了。但我此时又后悔了,怎么办?

  //重新reset即可找回
  git reset --hard 之前的版本号
  • 现在,就可以退回最新版本了。
  • 但这个方法前提是你当前这个控制台不曾关掉,如果已经关掉了,你是没法知道版本号的,这时候要怎么办呢?
  //Git提供了一个命令git reflog 用来记录你的每一次命令
  git reflog

851e01f2505e3b24a294381880898a13.png

09

代码冲突

  • 修改master的代码,执行:
  git add .
  git commit -m "提交master"
  git push origin dev(当前的版)
  然后执行:
  git merge dev
  • 我们会发现,vscode提示代码冲突:

15a3640ab50285bc8cef0c36f8212f23.png

此时,我们只需要点击我们想要的选项,即可解决代码冲突。

0ca32db308fe1596dc7f8de2bef075df.png 4e990d09b91c9edaf1d3359ab9ab537c.png
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值