Git回滚和强推的使用说明及注意

 更新时间:2025年12月06日 09:16:57   作者:gorgor在码农  
这篇文章主要介绍了Git的基本操作流程,包括git分区、git日志查看、代码回滚等,同时,还详细解释了Merge和Rebase的区别,以及gitpull和gitfetch的区别,最后提到了gitlog和gitreflog的使用

1.前言知识

1.1 git 分区

git有三大分区,平常我们操作git命令的时候,就是把文件提交在不同的分区流转,流程如下。(可参考如下图片理解)

  • git add 命令 将工作区的文件提交到暂存区里保存。
  • git commit 命令 ,将暂存区的文件提交到本地仓库保存。
  • git push 命令 , 将本地仓库的文件提交到远程仓库保存。

1.2 git 日志在idea中如何看

一般在idea中,git日志中有3种标签,分别代表不同的含义。各含义如下(可参考下图,图是网上拿别人的):

  • 黄色代表HEAD,表示当前分支,当前所在的分支。
  • 绿色代表本地分支(已存在本地的分支)。
  • 紫色代表远程分支。

2. 在idea中如何用git进行回滚

开发期间,偶尔会因为不小心提交了错误的文件,或者合并别人代码的时候,把别人代码覆盖了,或者合并错误了,需要代码回滚。此时,需要根据代码在不同的分区中的情况,进行代码的回滚。

具体操作如下图:

3. git几种容易搞混的命令

  • Merge 和 Rebase
  • git pull 和 git fetch
  • git log 和 git reflog

3.1 Merge 和 Rebase

当我们 git pull 或者是把某个分支合并到远程主分支的时候,在idea中有时会出现冲突,这时会弹出一个框。

如下图:

此时需要我们去合并解决冲突。合并的时候,就需要了解Merge 和 Rebase有什么区别。其实Merge 和 Rebase都是合并代码的意思,区别主要是基的不同。

Merge合并前的基,如下:


Merge合并后的基,如下:

Rebase合并前的基,如下:

Rebase合并后的基,如下:

基代表着分支日志的展示形式,像Rebase,分支日志是一条,看起来很整齐。如下图

Merge的分支日志可以看出分支合并的情况,如下图:

3.2 git pull 和 git fetch

git fetch是将远程主机的最新内容拉到本地仓库,用户在检查了以后决定是否合并到工作本机分支中。

而git pull 则是将远程主机的最新内容拉下来后直接合并本地工作区,即:git pull = git fetch + git merge,这样可能会产生冲突,需要手动解决。

如下图所示:

3.3 git log 和 git reflog

  • git log 命令可以显示所有提交过的版本信息(如果嫌打印的东西太多,可以使用 git log --oneline)
  • git reflog 命令可以查看所有分支的所有操作记录(包括已经被删除的 commit 记录和 reset 的操作),一般用于获取回滚的commitid。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 编程爱好者学习心得补充

    编程爱好者学习心得补充

    由于网络的发展趋势,现在越来越多的人喜欢电脑,并学习编程,现在新手不缺,就是缺少深入钻研的牛人,这里简单介绍下新手编程学习经验,需要的朋友可以参考下
    2013-06-06
  • VS Nuget的使用实践

    VS Nuget的使用实践

    Nuget是一个VS的扩展插件。我们在使用VS开发时,Nuget能把在项目中添加、移除和更新引用的工作变得更加快捷方便,感兴趣的可以了解一下
    2021-09-09
  • vscode设置多行展示文件标签的操作方法

    vscode设置多行展示文件标签的操作方法

    这篇文章主要给大家介绍了vscode设置多行展示文件标签的操作方法,文中通过图文结合的方式给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-12-12
  • htaccess语法教程

    htaccess语法教程

    前些天不小心删除了原来的博客系统,问过godaddy的客服,恢复数据需要150美元,另外还需要提供不少信息,我于是放弃,注册了这个nunumick.me,打算从头再来。
    2011-09-09
  • gitlab项目如何修改主分支main为master以及可能遇到的问题详解

    gitlab项目如何修改主分支main为master以及可能遇到的问题详解

    本文详细介绍了如何将Git仓库的主分支名称从main修改为master,包括本地和远程仓库的更改步骤,以及如何在GitLab上更改默认分支和删除受保护分支
    2024-11-11
  • win7/win10+vs2015+pcl1.8.0配置方案详解

    win7/win10+vs2015+pcl1.8.0配置方案详解

    这篇文章主要介绍了win7/win10+vs2015+pcl1.8.0详细配置方案,本文通过图文并茂的形式给大家讲解的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-04-04
  • Sublime Text 4 安装Package Control的详细步骤

    Sublime Text 4 安装Package Control的详细步骤

    最近换了台电脑安装了Sublime Text 4但是按照之前的方法Package Control怎么也安装不上,查阅很多资料多次尝试发现Sublime Text 4可以直接安装不需要之前那些步骤,下面小编把安装步骤分享给大家,需要的朋友参考下吧
    2022-01-01
  • Visual Studio 2022 集成 GIT 使用图文教程

    Visual Studio 2022 集成 GIT 使用图文教程

    本文详细介绍了VisualStudio2022与GIT集成的操作步骤,包括下载GIT、安装和配置GIT、以及如何在VisualStudio2022中下载GIT项目和上传项目到GIT服务器,感兴趣的朋友跟随小编一起看看吧
    2024-09-09
  • 计算机网络日常练习题,每天进步一点点

    计算机网络日常练习题,每天进步一点点

    下面小编就为大家带来一篇计算机网络的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-09-09
  • kali添加开机自启的方法

    kali添加开机自启的方法

    采用systemd的方法,kali默认是没有rc.local的,需要自己创建。本方法也适用于ubuntu 18.04 64bit,对kali添加开机自启知识感兴趣的朋友一起看看吧
    2022-09-09

最新评论