文档章节

git仓库删除所有提交历史记录,成为一个干净的新仓库

d
 dragon_tech
发布于 05/20 17:35
字数 266
阅读 5
收藏 1
Git

把旧项目提交到git上,但是会有一些历史记录,这些历史记录中可能会有项目密码等敏感信息。如何删除这些历史记录,形成一个全新的仓库,并且保持代码不变呢?

1.切换到新的分支

   git checkout --orphan latest_branch
  1. 缓存所有文件(除了.gitignore中声名排除的)
   git add -A
  1. 提交跟踪过的文件(Commit the changes)
   git commit -am "commit message"
  1. 删除master分支(Delete the branch)
   git branch -D master

5.重命名当前分支为master(Rename the current branch to master)

   git branch -m master

6.提交到远程master分支 (Finally, force update your repository)

   git push -f origin master

 

本文转载自:https://www.jianshu.com/p/0b986acd0064

d
粉丝 4
博文 405
码字总数 12386
作品 0
西安
私信 提问
BFG Repo-Cleaner - 快速清除Git提交历史中的特定文件

BFG Repo-Cleaner(快速清除Git提交历史中的特定文件) 有些时候不小心上传了一些敏感文件(例如密码), 或者不想上传的文件(没及时或忘了加到.gitignore里的),而且上传的文件又特别大的时候, 这...

白石
04/09
0
0
git 常用命令梳理

Git已经成为当前最流行的版本控制解决方案了,如果你现在还不使用git都不好意思出门了。如果细数起来Git的命令太多了,但是常用的就那么几组命令,下面说下常用命令的用法: 下面简单演示下:...

深山猎人
2016/06/13
60
0
深入理解git系列

title 文章参考:http://git.oschina.net/progit/ 1,git简介 版本控制 简而言之,就是可以报存你所有的修改,所有的历史版本;有了它,就可以将某个文件回溯到之前的状态,甚至可以将整个项目回退到...

funnycoderstar
2017/11/03
0
0
分布式源代码管理工具(Git) 2.8.0 官方多语中文版

Git是一个强大的分布式的源代码管理工具。Git是用c语言开发的分布版本控制系统。版本控制系统可以保留一个文件集合的历史记录,并能回滚文件集合到另一个状态(历史记录状态)。另一个状态可...

相心的泪
2016/07/21
13
0
一篇文章,教你学会Git

在日常工作中,经常会用到Git操作。但是对于新人来讲,刚上来对Git很陌生,操作起来也很懵逼。本篇文章主要针对刚开始接触Git的新人,理解Git的基本原理,掌握常用的一些命令。 一、Git工作流...

Ruheng
2017/08/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

微服务之架构技术选型与设计

本文主要介绍了架构技术选型与设计-微服务选型,Spring cloud 实现采用的技术,希望对您的学习有所帮助。 架构技术选型与设计-DUBBODubbo,是阿里巴巴服务化治理的核心框架,并被广泛应用于阿...

别打我会飞
今天
3
0
在Windows中运行Linux bash命令的几种方法

如果你正在课程中正在学习 shell 脚本,那么需要使用 Linux 命令来练习命令和脚本。 你的学校实验室可能安装了 Linux,但是你自己没有安装了 Linux 的笔记本电脑,而是像其他人一样的 Window...

老孟的Linux私房菜
今天
6
0
深入理解计算机系统(1.1)------Hello World 是如何运行的

上一篇序章我谈了谈 程序员为啥要懂底层计算机结构 ,有人赞同也有人反对,但是这并不影响 LZ 对深入理解计算机系统研究的热情。这篇博客以案例驱动的模式,通过跟踪一个简单 Hello World 程...

vinci321
今天
2
0
Linux操作系统之Shell程序设计

Linux操作系统之Shell程序设计 Shell是种命令解释程序,也可以看作是一种命令语言的解释器。 用户在与Shell交互时所输入的命令行必须符合Shell命令的语法和语义规范,才能够被Shell理解并执行...

linuxCool
今天
7
0
Java Foreach拉姆达表达式

以下案例分析了foreach循环和Java8 拉姆达表达式的区别 public static void main(String[] args) {/* * foreach 和 list */List<String> arrs = new ArrayList<>();...

cuishy
今天
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部