Git永久删除commit--[非教程]】的更多相关文章

目录 Git永久删除文件和历史记录 使用filter-branch 添加到.gitignore文件里并push修改后的repo 清理和回收空间 Git永久删除文件和历史记录 造成你想从git存储库中永久删除文件和历史记录的可能有: 你不小心将一个不该加入版本管理的文件加了进去,敏感数据或大文件或别的没用的文件: 你不小心将一个涉及到破解某著名软件的文章加了进Github仓库,这时你就会收到github官方的邮件来提醒你需要完全删除该文件,不然就会遭到git仓库被封禁. 你希望将敏感数据或无用文件…
假设当前分支为master,当前的commit情况如下,现在需要删除commit_id_2和commit_id_4: commit_id_1 commit_id_2 commit_id_3 commit_id_4 commit_id_5 .... 一.创建新的分支,用于reset操作 git checkout -b develop git push orign -u develop 二.在新分支develop上,将commit重置到commit_id_4之前的提交 git reset --har…
在github上,如果非默认分支的话,直接用以下方法: git reset --hard <commit_id> git push origin HEAD --force 如是默认分支,需要将默认分支修改为其他的分支,才能进行此操作. 有的git系统不支持修改默认分支,例如阿里云的code就不支持,可能唯一的方法就是删掉项目重新建立.…
在github上,如果非默认分支的话,直接用以下方法: git reset --hard <commit_id> git push origin HEAD --force 如是默认分支,需要将默认分支修改为其他的分支,才能进行此操作. 有的git系统不支持修改默认分支,例如阿里云的code就不支持,可能唯一的方法就是删掉项目重新建立.…
永久删除文件后找回 1. 已经添加到本地库的文件 使用 reset 命令回退到未删除的历史记录即可 2.添加到缓存区,没有提交到本地库的文件找回 git reset --hard HEAD 命令即可找回 如删除了一个文件并add添加到了缓存区,而没有 commit 提交到本地库,则可以使用上面命令恢复 3. 总结: 前提:删除前,文件存在时的状态提交到了本地库(文件已经提交过) 操作:git reset --hard [指针] 删除操作已提交到本地库:指针位置指向历史记录 删除操作尚未提交到本地…
如何永久删除git仓库中敏感文件的提交记录 参考: 1. https://help.github.com/articles/remove-sensitive-data/…
Git 合并多次 commit 有时候在一个分支的多次意义相近的 commit,会把整个提交历史搞得很混乱,此时可以将一部分的 commit 合并为一个 commit,以美化整个 commit 历史,可以使用 rebase 的方法来合并多次 commit,主要步骤如下: 1. git log 查看当前的提交历史 比如需要将以下 3 个 ”请假应用客户端代码优化“ 的 commit 合并为一个 commit: 2. git rebase 进行 git 压缩 执行 git rebase -i HEA…
基于 GitFlow 工作流,可能某个提交(commit)导致了 bug,或者有多个提交需要返工,此时你就会用到删除提交. 接下来的内容都基于下面这张 git log 提交记录图来写.   git log 删除最后的提交 当需要删除最新的提交.或最最近的几个提交.比如删除 1 或者 1~3 的提交,使用 git reset命令. 我们需要关注一下 git reset的 --hard 和 --soft 参数. 举个例子删除最近两个提交看看: git reset --soft commit~3 ,然…
Git入门教程 1.   概述     对于软件版本管理工具,为什么要选择Git?      你真正学会使用Git时, 你就会觉得这个问题的回答是非常自然的.然而当真正需要用文字来回答时,却觉得文字好像不是那么够用. 咳,该则么回答呢?     其实,关键的问题不在于如何回答这个问题. 问题的关键是公司已经决定使用它了.那么,我们的程序员们! 请开动你们的浏览器,请拿出你的搜索引擎工具,去自己发掘答案吧.在这里,我只能给你们一个最朦胧的感觉.     Git和 CVS.SVN不同,是一个分布式的…
虽然许多IDE对git的支持不错,但用命令行方式,有助于对git本身的理解.这里对实际工作中,使用git的流程,以及与其相关的命令 小结一下,基本上,掌握这些命令,就能自如的在工作中使用. 1.git的全局设置 D:\rust-hi>git config --global user.name by90 D:\rust-hi>git config --global user.email 11084184@qq.com D:\rust-hi>git config --global crede…