v2还原到v1

1、强制还原(git reset)

如果使用这种方式还原到v1,将丢失还原到v1到v2之间的所有提交及日志。

1.1显示日志

有save1、save2两条提交记录。

1.2 重置版本(本地分支还原)

使用硬重置,否则重置后,还会有未提交的文件。重置到save1版本。

1.3 提交(推送到远程分支)

因为我们本地库版本比远程库版本低,需要强制推送

1.4 缺点

这种方式回退代码的弊端显而易见,那就是会使 HEAD 指针往回移动,从而会失去之后的提交信息。将来如果突然发现,save2 的代码是有用的,但是已经找不回来了。

2、温和还原(checkout)

为保留v1-v2的提交和历史记录,可以使用该方式。

2.1导出还原版本(v1)

2.2 提交还原版本(v1)

将导出的版本作为新版本v3提交。

3、温和还原(git revert)

git revert的作用通过反做创建一个新的版本,这个版本的内容与我们要回退到的目标版本一样,但是HEAD指针是指向这个新生成的版本,而不是目标版本。

3.1 显示日志

每次提交创建一个类,分别为Test1、Test2、Test3。

3.2 还原此版本做出的变更

还原Test2版本

还原后,test2版本提交的代码被取消了(即Test2类被删除了)。

3.3 提交

可以将修改代码提交到远程

查看日志,以前的提交记录没有丢失,最新的为刚提交版本。

tortoisegit 还原远程分支到某个版本的更多相关文章

  1. git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地

    git拉取远程分支并创建本地分支 一.查看远程分支 使用如下Git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...

  2. Git查看、删除、重命名远程分支和tag【转】

    转自:http://zengrong.net/post/1746.htm 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转载者注明文章出处,尊重我的劳动,也 ...

  3. [05]Git查看、删除、重命名远程分支和tag

    Git查看.删除.重命名远程分支和tag 2015-06-15:加入姊妹篇: 2013-11-06:加入重命名远程分支的内容: 2013-01-09:加入删除远程tag的内容. 姊妹篇:使用Git.G ...

  4. git 创建远程分支和删除 master 分支

    . . . . . 最近需要将不同的客户的代码分开管理,所以需要为这些代码分别创建分支. 目前版本库中分支结构如下: [yuhuashi@local:Project]$ git branch -a* ...

  5. Git查看、删除、重命名远程分支和tag(转)

    转:http://zengrong.net/post/1746.htm 这篇文章记录我在使用git的过程中碰到远程分支和tag的相关内容,提纲: 查看远程分支 删除远程分支和tag 删除不存在对应远程 ...

  6. git 查看远程分支、本地分支、创建分支、把分支推到远程repository、删除本地分支

    1 查看远程分支 $ git branch -a * br-2.1.2.2 master remotes/origin/HEAD -> origin/master remotes/origin/ ...

  7. 【git】删除某个文件的所有历史记录,批量删除远程分支

    删除git某个文件的所有历史记录 git的目的就是版本控制,记录每一个版本的变动.然而有的时候我们往往希望从版本库中彻底删除某个文件,不再显示在历史记录中.例如不小心上传了一堆错误的文件,或者不小心上 ...

  8. Git查看、删除、重命名远程分支和tag

    这篇文章记录我在使用git的过程中碰到远程分支和tag的相关内容,提纲: 查看远程分支 删除远程分支和tag 删除不存在对应远程分支的本地分支 重命名远程分支 把本地tag推送到远程 获取远程tag ...

  9. git - 远程分支

    对于用户来说,git给人提交到本地的机会.我们可以在自己的机器上创建不同的branch,来测试和存放不同的代码. 对于代码管理员而言,git有许多优良的特性.管理着不同的分支,同一套源代码可以出不一样 ...

  10. git对远程分支和tag的操作

    技术 Git查看.删除.重命名远程分支和tag 11/17/2012zrong7条评论69,235 次查看 本站文章除注明转载外,均为本站原创或者翻译. 本站文章欢迎各种形式的转载,但请18岁以上的转 ...

随机推荐

  1. 基于jdk自带httpserver开发的最小完整MVC框架

    基于jdk自带httpserver开发的最小完整MVC框架 410kb级的完整MVC:solon(83k) + jdkhttp(27k) + enjoy(227k) + snack3(73k) DEM ...

  2. dom4j selectNodes 取不到值 因为XML带有命名空间 HL7

    xml 如下: <?xml version="1.0" encoding="UTF-8"?> <POOR_IN200901UV ITSVers ...

  3. MySQL Select 语句执行顺序

    一条 SQL 查询语句结构如下: SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN ...

  4. 拥抱智能,AI 视频编码技术的新探索

    随着视频与交互在日常生活中的作用日益突显,愈发多样的视频场景与不断提高的视觉追求对视频编码提出更高的挑战.相较于人们手工设计的多种视频编码技术,AI 编码可以从大数据中自我学习到更广泛的信号内在编码规 ...

  5. #1016:Prime Ring Problem(经典DFS)

    原题链接 题意:很容易理解,就是让你输出满足相邻的相加是素数的序列(注意不要重复) 思路就是深搜思想把每种情况遍历一次 代码实现: #include<iostream> #include& ...

  6. 【每日一题】29.maze (BFS 进阶)

    补题链接:Here 本题代码由贺佬完成 这道题基本算一道 BFS 进阶题,有少许细节要小心 (WA1发.. #include <bits/stdc++.h> #define x first ...

  7. 【体验有奖】玩转 AIGC,函数计算 x 通义千问预体验,一键部署AI应用赢Airpods

    玩转 AIGC,基于函数计算 FC 部署通义千问预体验 从文字生成到图片生成,AIGC 的创造力让人惊叹,更多的人开始探索如何使用 AI 提高生产效率,激发更多创作潜能,然而在实际应用中,AI 技术的 ...

  8. 开发中history和location

  9. NLP复习之神经网络

    NLP复习之神经网络 前言 tips: 设计神经网络时,输入层与输出层节点数往往固定,中间层可以自由指定: 神经网络中的拓扑与箭头代表预测过程数据流向,与训练的数据流有一定区别: 我们不妨重点关注连接 ...

  10. linux route 命令

    route 管理路由表         要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现.在Linux系统中,设置路由通常是为了解决以下问题:该Linux ...