git删除所有Commits提交历史记录,变为全新仓库

个人感觉一般两个情况下,会想有这个需要:

  • 一个是:需要把旧项目提交到Git上,但是原来的某版历史记录中可能会有项目密码等敏感信息。这时候需要删除这些历史记录,形成一个全新的仓库,并且希望保持代码不变。

  • 另一个是:处女座!隔三差五看到过往的Commits心烦,没有原因。

1. Checkout

新建一个branch

git checkout --orphan latest_branch

2. Add all the files

git add -A

3. Commit the changes

git commit -am "commit message"

4. Delete the branch

git branch -D master

5. Rename the current branch to master

git branch -m master

6. 连接远程库

把下面的Hzfans替换成你自己的GitHub账户名,Hzfans.github.io替换为你自己的项目名称。
连接后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。这一步非必要,如果你之前已经连接了的话,以防万一。

git remote add origin git@github.com:Hzfans/Hzfans.github.io.git

7. Finally, force update your repository

git push -f origin master

YUHONGJUN.GITHUB.IO

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • @synthesize和@dynamic分别有什么作用?@property有两个对应的词,一个是 @synthes...
    笔笔请求阅读 555评论 0 1
  • 猜想runloop内部是如何实现的?一般来讲,一个线程一次只能执行一个任务,执行完成后线程就会退出。如果我们需要一...
    笔笔请求阅读 453评论 0 0
  • 【Aipm引导页】 https://58976235.wodemo.net/down/20170514/44034...
    Mr_洛寒阅读 2,774评论 3 5
  • 公众号后台有人留言《心迷宫》这部电影,就特意去看了下。这部拍摄成本只有170多万的电影,太有意思了,感谢留言的这位...
    sanyeqing_77阅读 1,356评论 0 1
  • 朋友突然间就分了手 原本犹豫不决的她突然间比谁都坚定 他们在一起将近六年 期间分分合合很多次但始终没有分成 无论男...
    孤褴寡褛阅读 369评论 0 2