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 每次 ...
随机推荐
- MSMQ学习笔记一——概述
一.MSMQ是什么 Message Queuing(MSMQ) 是微软开发的消息中间件,可应用于程序内部或程序之间的异步通信.主要的机制是:消息的发送者把自己想要发送的信息放入一个容器中(我们称之为M ...
- ZT C++关键字new学习
http://blog.csdn.net/waken_ma/article/details/4007914 C++关键字new学习 很多新手对C++关键字new可能不是很了解吧,今天我一起来学习一下. ...
- strtoul (将字符串转换成无符号长整型数)
strtoul strtoul (将字符串转换成无符号长整型数) 相关函数 atof,atoi,atol,strtod,strtol 表头文件 #include<stdlib.h> 定义函 ...
- Windos下Android(ADT Bundle)配置NDK的两种方法------ADT、Cygwin、NDK配置汇总(转)
转自:http://blog.csdn.net/yanzi1225627/article/details/16897877 Android开发环境由windows下ADT Bundle搭建,且按前文h ...
- linux下时间同步的两种方法分享(转)
与一个已知的时间服务器同步 代码如下: ntpdate time.nist.gov 其中 time.nist.gov 是一个时间服务器. 删除本地时间并设置时区为上海 复制代码 代码如下: rm -r ...
- HDU 3038 How Many Answers Are Wrong 【YY && 带权并查集】
任意门:http://acm.hdu.edu.cn/showproblem.php?pid=3038 How Many Answers Are Wrong Time Limit: 2000/1000 ...
- PHP设计模式——责任链模式
<?php /** * 责任链模式 * 组织一个对象链处理一个请求,每个处理对象知道自己能处理哪些请求,并把自己不能处理的请求交下一个处理对象 * * 适用场景: * 1.有多个对象可以处理同一 ...
- 【洛谷P1726】上白泽慧音
上白泽慧音 题目链接 强联通分量模板题,Tarjan求强联通分量,记录大小即可 #include<iostream> #include<cstring> #include< ...
- 【洛谷P3818】小A和uim之大逃离 II
小A和uim之大逃离 II 题目链接 比较裸的搜索,vis[i][j]再加一层[0/1]表示是否使用过魔液 转移时也将是否使用过魔液记录下来,广搜即可 #include<iostream> ...
- 【luogu P2764 最小路径覆盖问题】 模板
题目链接:https://www.luogu.org/problemnew/show/P2764 把每个点在左边建一遍右边建一遍,再加上源点汇点,跑最大流,n-最大流就是答案. #include &l ...