repo回退当前分支下所有仓库到指定日期前的最新代码版本【转】
2024-10-14 23:03:20
本文转载自:https://blog.csdn.net/u011006622/article/details/70272087
执行下面这样的repo命令就行了:
repo forall -c 'commitID=`git log --before "2017-03-17 07:00" -1 --pretty=format:"%H"`; git reset --hard $commitID'
参数说明:
forall 操作分支中的所有仓库
-c 只操作当前分支
--before 早于指定时间点的提交记录
-1 只显示最近的1条记录(注意这是数字 1 ,如果要显示 2 条就写 2,以此类推)
"2017-03-17 07:00" 希望回退到的日期(时间点)
--pretty 以指定格式显示提交记录
%H 提交记录的hash值,即commit id(其它格式及更详细的信息可以使用命令git log --help打印帮助信息并查看“PRETTY FORMATS”小节)
命令含义:
这条repo命令的实质就是在当前分支的每个仓库下执行git log命令,找出该仓库下符合时间条件的第一个提交记录,然后对该仓库执行git reset --hard操作。就这么简单。
注意事项: 命令里的单引号'以及`要注意区分! 前后两个是单引号' 当中两个是`
举例: repo forall -c 'commitID=`git log --before "2017-04-15 07:00" -1 --pretty=format:"%H"`; git reset --hard $commitID'
最新文章
- Android开发eclipse运行程序时报timeout的解决方法
- xenserver
- 算法代码[置顶] 机器学习实战之KNN算法详解
- 【MongoDB数据库】MongoDB 命令入门初探
- JavaScript语言基础知识点图示
- ADO.NET 数据库操作类
- Android 性能测试——Heap Viewer 工具
- WebSocket协议:5分钟从入门到精通
- 二叉树分派硬币 Distribute Coins in Binary Tree
- wait_activity
- Java 注解用法详解——@SuppressWarnings
- vue key
- 使用Jquery实现Win8开始菜单效果的站点导航
- leetcode 98,判断二叉树为BST
- 关于java8(Stream)的一些用法
- 关于webRTC
- python基础-函数之装饰器、迭代器与生成器
- TCP为什么要三次握手,不是两次四次
- JZOJ 3385. 【NOIP2013模拟】黑魔法师之门
- 九度oj 题目1345:XXX定律之画X