如何修剪git reflog历史】的更多相关文章

执行以下步骤之前 请做好源码备份 本操作用来清理github上面的历史删除文件,减少库的体积. 第一步骤 下载JDK环境和JAR包 https://rtyley.github.io/bfg-repo-cleaner/ 配置JAVA 系统变量 第二步骤 克隆GIT库 git clone --mirror git@github.com:944095635/DMSkin.git 第三步骤 (删除128K以上的文件) java -jar bfg.jar --strip-blobs-bigger-than…
本章节主要介绍 git reflog 命令. Git 使用一种称为引用日志或"reflogs"的机制来跟踪分支顶端的更新. 许多 Git 命令接受用于指定引用或"ref"的参数,它是指向提交的指针. 常见的例子包括: git checkout git reset git merge Reflogs跟踪本地仓库中Git引用的更新时间.除了分支提示引用日志之外,还为Git存储维护了一个特殊的reflog.Reflogs存储在本地仓库的.git目录中.git reflog…
用法 git reflog 显示整个本地仓储的commit, 包括所有branch的commit, 甚至包括已经撤销的commit, 只要HEAD发生了变化, 就会在reflog里面看得到. git log只包括当前分支的commit. git reflog --relative-date 显示相对时间的commit纪录. 讨论 每一次当前HEAD发生改变(包括切换branch, pull, 添加新commit)一个新的纪录就会被添加到reflog. 例子 运行git reflog 0a2e35…
git reflog 和git log的区别,外加git cherry-pick的一种用法 git reflog 可以查看所有分支的所有操作记录(包括(包括commit和reset的操作),包括已经被删除的commit记录,git log则不能察看已经删除了的commit记录 具体一个例子,假设有三个commit, git st: commit3: add test3.c commit2: add test2.c commit1: add test1.c 如果执行git reset --hard…
转自:https://www.jianshu.com/p/3622ed542c3b 背景 git太常用了,虽然,用起来不难,但也有很多小技巧的东西... 1. 后悔药 哪天不小心,写完代码,没commit,直接reset了或者checkout了,怎么办? git reflog 会列出你的各种操作,然后git reset 到指定的节点就可以 屏幕快照 2016-05-04 下午12.20.13.png 2. bash里面显示git branch 像这样: 1.显示branch 2.增加点颜色 ch…
当你不小心,写错了提交的注视/信息,该如何处理呢.理论上,SCM是不应该修改历史的信息的,提交的注释也是.   不过在git中,其commit提供了一个--amend参数,可以修改最后一次提交的信息.但是如果你已经push过了,那么其历史最后一次,永远也不能修改了.   我使用git commit --amend已经push过的,截图如下,我那个"fixes #3"永远的在版本历史中了. git commit --amend 的用法,,, # git commit --amend 然后…
1.git log  log命令可以显示所有提交过的版本信息.显示信息如下: $ git log commit e1bdff6e4830e09383078c860f45334d03771b03 (HEAD -> master) Author: lyf1995 <@qq.com> Date: Sat Dec :: + 第二次提交 commit 62e67397d7891610ed7db7edab0e10619d9d8f0e Author: lyf1995 <@qq.com> D…
git log: commit 的版本日志 包含提交的版本 操作者 日期 (方便查看commit的版本,但是版本回退后,使用git log 看不到回退版本号之后的版本记录) commit ce0d69899b65fb22708f2f4ef48de11a05d0acc2Author: lowmanisbusy <910472036@qq.com>Date: Thu May 17 23:40:36 2018 +0800 a=6 commit 1a6539661ef6c37257833e702ed2…
Git如何永久删除文件(包括历史记录)   有些时候不小心上传了一些敏感文件(例如密码), 或者不想上传的文件(没及时或忘了加到.gitignore里的), 而且上传的文件又特别大的时候, 这将导致别人clone你的代码或下载zip包的时候也必须更新或下载这些无用的文件, 因此, 我们需要一个方法, 永久的删除这些文件(包括该文件的历史记录). 首先, 可以参考 github 的帮助: https://help.github.com/articles/remove-sensitive-data…
在开发中经常需要reset分支,如果在reset前没有记住分支指向的提交ID,想要重置回原来的提交恐怕大多数开发者是重新拉取远程版本库,再rebase分支.但如果连不上远程版本库或没有远程版本怎么办呢?git提供了一个挽救机制,git日志记录了分支的所以本地变更,通过它即可找回原来的代码. 下面我们来演示一下: 先查找本地操作日志: git reflog show dev 上图可以看到我们有个错误的reset,下面的命令即可恢复到reset前的状态: git reset --hard dev@{…