Git的使用规范(二)
今天,我们来介绍一下git的一些命令行,来帮我们后面可以面对一些情况的时候,我们可以有一些解决的方法
1.git查看历史记录最全的命令行
git log --pretty=raw
2.对于一下的几个情况,我们一般采用的操作流程:
1)如果修改某一个文件(没有git add),想要撤销这次修改
git checkout b.txt
如果不写文件名,我就是把所有的已经修改文件全部撤销
2)如果修改某一个文件(git add已存在暂存区),想要撤销这次修改
git reset a.txt
3)如果已修改某几个文件,但是想撤销到某个版本,但是当前暂存区,
工作区不想撤销
git reset --soft commitId(这个用的不多)
4)如果修改了某几个文件也提交到了暂存区,想撤销到某个commitId
git reset --hard commitId
3.如果你对一个文件进行修改,你把它add到了暂存区里面之后,然后你又对
这个文件进行了修改,此时,你的修改有在工作区里面的修改以及暂存区里面
的修改,但是,如果你此时想要对回滚到上一次的commit的时候,而且保证
此时的工作区以及暂存区的修改没有变化的话,我们可以这样操作:
git reset --soft head^
4.(这一点不是很常见,不需要多理会这个)
git stash,将修改存储其阿里,也没有提交
git stash pop 打开修改,状态体现出来
5.关于git的版本回退机制
使用情况:当你对一个版本进行了修改,并且add.以及git commit了之后,如果你想回退这个版本的记录
1.git log(查看历史提交记录,特此说明一下commit的message真的很重要)
2.在git log里面查找到我们想回退的记录,我们可以使用git reset --hard commitId即可
3.回滚成功,突然发现自己还想回去到刚才的版本,可是我们查看git log已经看不到原来的记录了
4.git reflog查看记录,最好加上自己的版本,如果我们是在dev的开发版本上进行修改的
git reflog show dev,然后就可以看到自己的版本,从上到下是从自己最近到一起的记录
5.进行回滚,找到自己的回滚的记录,然后可以使用git reset --hard dev@{1},此时就可以像回滚到版本即可
注意:此时的这个回滚记录我们可以根据自己前面提交的message来判断,我前面提交的message是"2017-5-14"
所以我只需要输入 git reset --hard dev@{1}即可
同理,日志也是回退到那个版本
6.git checkout的方法(一些回滚的方法)
git checkout . 把所有没有在暂存区里面的数据进行回滚
git checkout fileName 把文件名fileName的里面没有静茹到暂存区里面的数据进行回滚
git checkout 目录
Git的使用规范(二)的更多相关文章
- 使用VSTS的Git进行版本控制(二)——提交保存工作
使用VSTS的Git进行版本控制(二)--提交保存工作 当对文件进行更改时,Git将在本地仓库中记录更改.可以通过选择变更来提交的对应更改.提交总是针对本地的Git仓库,因此不必担心提交是完美的,或者 ...
- git 分支命名规范
为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 主要规范两点: git 分支命名规范 git 提交记录规范 1. git 分支命名规范 git 分支 ...
- 一只代码小白git托管路上的二三事
[经验]一只代码小白git托管路上的二三事 写在前面的话 寒假的时候,娄老师给我们布置了代码托管的作业,并要求把托管地址发给学委.因假期的时候没有带电脑回家,所以只是在手机上草草注册了,也稀里糊涂就将 ...
- Git常用命令和Git团队使用规范指南
转自:https://wsgzao.github.io/post/git/ 前言 在2005年的某一天,Linux之父Linus Torvalds 发布了他的又一个里程碑作品——Git.它的出现改变了 ...
- 团队项目的Git分支管理规范
原文地址: http://blog.jboost.cn/2019/06/17/git-branch.html 许多公司的开发团队都采用Git来做代码版本控制.如何有效地协同开发人员之间,以及开发.测试 ...
- Git 分支开发规范
您必须知道的 Git 分支开发规范 Git 是目前最流行的源代码管理工具. 为规范开发,保持代码提交记录以及 git 分支结构清晰,方便后续维护,现规范 git 的相关操作. 分支管理 分支命名 ma ...
- Git Commit Message 规范
今天来说说团队开发中,对于 Git commit message 规范问题. 社区上有各种 Commit message 的规范,本文介绍 Angular 规范,目前使用较广,比较合理和系统化,并且有 ...
- Git学习笔记(二) · 非典型性程序猿
远程库的使用 前面说到的都是git在本地的操作,那么实际协作开发过程中我们肯定是要有一个远程版本库作为项目的核心版本库,也就是投入生产使用的版本.这里我们以 Github为例.Github是一个开放的 ...
- Git提交代码规范 而且规范的Git提交历史,还可以直接生成项目发版的CHANGELOG(semantic-release)
Git提交代码规范 - 木之子梦之蝶 - 博客园 https://www.cnblogs.com/liumengdie/p/7885210.html Commit message 的格式 Git 每次 ...
随机推荐
- javascript Object与Array用法
引用类型:引用类型是一种数据结构,用于将数据和功能组织在一起.引用类型的值是引用类型的一个实例. 一.Object ECMAScript中的对象其实就是一组数据和功能的结合. Object类型其实是所 ...
- OC 结构体
void test() { // 这个机构只能在函数内部使用 // 定义一个名为Student的结构体类型 struct Student { int age; // 年龄 char *name; // ...
- 广义mandelbrot集,使用python的matplotlib绘制,支持放大缩小
迭代公式的指数,使用的1+5j,这是个复数.所以是广义mandelbrot集,大家能够自行改动指数,得到其它图形.各种库安装不全的,自行想办法,能够在这个站点找到差点儿全部的python库 http: ...
- Python语言程序设计基础(2)—— Python程序实例解析
温度转换 def tempConvert(ValueStr): if ValueStr[-1] in ['F','f']: ans = (eval(ValueStr[0:-1]) - 32)/1.8 ...
- Catalan数列
引入 今天听学长讲了卡特兰数列后对其有了更深的认识,在此完善了一下之前的博客加以总结. 首先用一个经典的例子来描述一下Catalan数列,我们有一个1~n的数列和一个大小为n的栈,我们有如下两种操作: ...
- POJ 1745 【0/1 背包】
题目链接:http://poj.org/problem?id=1745 Divisibility Time Limit: 1000MS Memory Limit: 10000K Total Sub ...
- Cesium.js学习第一天(设置材质)
var viewer = new Cesium.Viewer('cs'); var entity = viewer.entities.add({ position: Cesium.Cartesian3 ...
- 【luogu P1640 [SCOI2010]连续攻击游戏】 题解
题目链接:https://www.luogu.org/problemnew/show/P1640 数据有点水吧,从属性值连向对应武器编号. 枚举属性值匹配,遇到第一个无法匹配的直接跳出就好惹~. #i ...
- PLSQL 禁用所有约束,启用约束,索引,触发器等
--禁用外键和触发器 SET SERVEROUTPUT ON SIZE 50000BEGINfor c in (select 'ALTER TABLE '||TABLE_NAME||' DISABLE ...
- 解密Spring加载的Properties文件
Spring的框架中,org.springframework.beans.factory.config.PropertyPlaceholderConfigurer类可以将.properties(key ...