Git的撤销、修改和回退命令

一、撤销修改(git add/rm 之前)

git checkout -- *   //是撤销从上次提交之后所做的所有修改
git checkout -- filaname  //是撤销从上次提交之后的单个文件的修改

二、git add/rm 之后,还未git commit

情况一:

从暂存区撤出

git reset HEAD <file>  //reset 某个文件
git reset HEAD .       //reset 所有

情况二:

如果是 git rm 的文件,需要执行下面的,把它撤回来,add 的文件不能用(用了会撤回修改,如果想撤回修改前的,也可以用下面的命令)

git  checkout -- file_name
//注:如果执行 git checkout -- . 则会把之前add 更改的文件也给撤回了

三、撤销修改 git commit -m ""  、还未执行git push

1. 找到上次git commit的 id,找到你想撤销的commit_id

git log  //查看日志

2. 完成撤销,同时将代码恢复到前一commit_id 对应的版本

git reset --hard commit_id   //执行撤销

注:不保留commit 之前修改的代码,reset之后,代码回滚到上个版本
3.完成Commit命令的撤销,但是不对代码修改进行撤销,可以直接通过git commit 重新提交对本地代码的修改。

git reset commit_id  //注释

注:保留commit之前修改的代码,撤销后,代码是修改后的状态,还能继续修改

四、对于已经push的版本,进行回退

1、第一步:

git reset --hard 版本号 //本地回退到指定的版本

2、第二步:

git push -f origin dev //将远程的也回退到指定版本

到此这篇关于Git的撤销、修改和回退命令的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 全网最全Git命令手册

    目录 常用语句 新建 配置 状态 信息:获取某些文件,某些分支,某次提交等 git 信息 添加 删除 分支 检出 远程同步 撤销: 提交 diff: 显示当前工作空间和提交的不同 grep:可以在版本库中快速查找 log: 显示这个版本库的所有提交 merge: 合并就是将外部的提交合并到自己的分支中 tag: push: 从远端版本库合并到当前分支 rebase(谨慎使用) 其他: 参考文档: 常用语句 git init # 初始化本地git仓库(创建新仓库) git config --glo

  • Git工作流模式及命令的使用讲解

    目录 Git的工作方式 集中式工作流 功能分支工作流 Gitflow工作流 维护分支 工作流程 Forking工作流 Pull Request Git的工作方式 分为集中式工作流.功能分支工作流.Gitflow工作流和Forking,其中集中式工作流和功能分支工作流是已经使用过的,Gitflow和Forking两种工作流暂时没有使用过. 集中式工作流 一个远程仓库,一个主分支master,团队每个成员都有一个本地仓库,在本地仓库中进行代码的编辑.暂存和提交工作: git add <some fi

  • Git代码提交流程及git命令汇总(基础篇)

    基本了解 git命令是一些命令行工具的集合,它可以用来跟踪,记录文件的变动.比如你可以进行保存,比对,分析,合并等等.这个过程被称之为版本控制.已经有一系列的版本控制系统,比如SVN, Mercurial, Perforce, CVS, Bitkeepe等等. Git是分布式的,这意味着它并不依赖于中心服务器,任何一台机器都可以有一个本地版本的控制系统,我们称之为仓库.如果是多人协作的话,你需要还需要一个线上仓库,用来同步信息.这就是GitHub, BitBucket的工作. 自己用Git有一段

  • Git常用命令介绍

    常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) Remote:远程仓库 一.新建代码库 # 在当前目录新建一个Git代码库 $ git init 新建一个目录,将其初始化为Git代码库 $ git init [project-name] 下载一个项目和它的整个代码历史 $ git clone [url] 二.配置 Git的设置文件为.gitconfig,它可以在用户主目录下(全局配置),

  • Git常用命令汇总

    1.配置自己的用户名和邮箱 git config --global user.name "用户名" //加引号 git config --global user.email "邮箱地址" //加引号 2.生成并部署SSH key公钥 ssh-keygen -t rsa -C "邮箱地址" //加引号 3.查看SSH KEY cat ~/.ssh/id_rsa.pub 4.初始化本地仓库 git init 5.连接远程 git remote add

  • 分享Git常用7大技巧和命令

    Git 是一个非常强大的工具,它包含丰富的工具用以维护项目.本文介绍了一些 Git 日常使用过程中的实用技巧和命令,希望这些内容能够对大家有所帮助. 一.Git diff比对命令 通常情况下,我们会在自己的独立分支中完成需求开发,此时就会有需求将自己的分支和其他分支进行对比.这个功能可以通过 git diff branch1 branch 命令来实现. 如果希望对比暂存区和当前的 HEAD,那么使用 git diff --cached 命令会非常方便.普通的git diff命令默认对比的是没有加

  • git工具常用命令及ssh操作方法

    目录 git基础命令 暂存,本地仓库,远程仓库,本地代码 拉取其他分支 合并分支 代码提交 版本穿梭 注意点 SSH git基础命令 git clone '远程仓库地址' 第一次从仓库拉取代码 git pull  拉取最新 git add . 把代码提交到暂存区git commit -m "备注"  将暂存区内容添加到本地仓库 git push  提交 git checkout '分支名'  切换到指定分支名 git branch  查看本地分支列表 git branch -a/–al

  • 使用git命令上传代码

    利用git将本地代码提交到远程服务器一般分为如下5个步骤: 一.查看当前文件的状态 使用git status命令可以查看有那些文件进行了修改,一般有下面几个状态: 1.Untracked: 未跟踪, 此文件在文件夹中, 但并没有加入到git库, 不参与版本控制. 通过git add 状态变为Staged. 2.Modified: 文件已修改, 仅仅是修改, 并没有进行其他的操作. 3.deleted: 文件已删除,本地删除,服务器上还没有删除. 示例如下: 打开git bash客户端,然后输入g

  • Git命令之分支详解

    1.1 概述 在 Git 中提交时,会保存一个 commit 对象,该对象包含一个指向暂存内容快照的指针,包含本次提交的作者等相关的附属信息,包含零个或者多个指向该提交对象的父对象指针:首次提交时没有直接祖先的,普通提交有一个祖先,由两个或者多个分支合并产生的提交则有多个祖先. 1.1.1 示例 在工作目录中有三个文件,准备将他们暂存后提交.暂存操作会对每一个文件计算校验和(SHA-1哈希串),然后把当前版本的文件快照保存在 Git 仓库中(Git使用blob类型的对象存储这些快照), 并将校验

  • Git命令的简单整理大全

    前言 自动帮助记录每次文件的改动,同时协作永工作 学习git命令是充分必要的 集中式和分布式 分布式每个人电脑都是一个完整的版本库,也有类似中央服务器的电脑,但是这个服务器只是用来交互打架的修改没有它大家也一样干活,只是交互修改不方便而已 安装只要安装了xcode就可以了 仓库:里面文件修改,删除,添加都能被git追踪,认识时刻都能追踪历史或者将来某哥时刻还原只能追踪文本文件的改动 创建目录和查看路径 mkdir 创建目录   cd    进入到目录里面 pwd   用于显示当前的目录 cat 

随机推荐