git学习笔记——查看git历史记录

<h1></h1> <h1>1.查看Git日志:</h1> &nbsp; <blockquote>命令:git log 默认不加参数,git日志会按照最新的日期从上往下显示git

参数:-p 显示版本间的代码差别windows

<p style="padding-left: 30px;">-<span style="color: #ff6600;">数字</span> 显示部分的提交</p> <p style="padding-left: 30px;">-哈希值 显示指定的版本</p> </blockquote> <h1>2.指定查找范围:</h1> <blockquote>--since="5 hours" 显示最近5小时内的提交缓存

--since="5 hours" -1 显示5小时内的最后一个提交编辑器

--before 用法和--since的用法差很少,显示的是在某个时间点以前的提交spa

版本1..版本2 说明:版本1以后到版本2的全部提交,版本2能够用<span style="color: #ff0000;">HEAD(要注意大写)<span style="color: #000000;">表示当前的最新版本</span></span>日志

版本^ 回溯一个版本 注意:<span style="color: #ff0000;">在windows下要加双引号"版本^"</span>排序

~N: 回溯N个版本</blockquote>it

<h1>3.查看指定版本之间的差别</h1> <blockquote>git diff 版本号 说明:当前目录树和对应版本号的差别统计

git diff --stat 说明:统计对应改动的代码量</blockquote>di

<h1>4.撤销修改</h1> <h2>4.1增补修改(只能用于针对最后一个提交)</h2> <blockquote>git commit -C HEAD -a --amend</blockquote> <h2>4.2反转提交</h2> 建立一个新的<strong><span style="color: #ff0000;">反向的</span></strong>提交来抵消原来的提交 <blockquote>git revert -n HEAD 反转当前版本库最新的提交而且缓存起来。可是不提交</blockquote> <h2>4.3复位</h2> <blockquote>git reset --soft 缓存因复位带来的差别可是不提交,也就是复位到上一个提交前的状态

git reset --hard 同时删除提交

例子:git reset --hard HEAD^ 复位到HEAD以前的那个版本</blockquote>

<h1>5从新改写历史记录</h1> 何时须要改写历史记录? <blockquote> <ul> <li>给历史记录从新排序</li> <li>多个提交合并成一个提交</li> <li>一个提交分解成多个提交</li> </ul> </blockquote> <blockquote>git rebase -i HEAD~3</blockquote> 本质上利用的是变基操做,定位到你想变化的范围以前。而后进入编辑器去修改你想修改的部分。完成以后再回到当前的末梢。