zoukankan      html  css  js  c++  java
  • GIT 库整理方法

          当一个对象在版本库中没有任何引用关联它的时候,它就成了"孤魂野鬼",不但发挥不了作用,还会白白占用版本库的容量空间。

        一般来说,撤销命令或更改命令会产生这些垃圾。如:

    $ git reset  HEAD  //对暂存区的撤销命令

    $ git reset --hard HEAD^  //对某次提交的撤销命令

    清理垃圾的方法有以下2种:

    1.人工手动法

    ‌step 1: $ git reflog expire --expire=now --all

    //设置历史记录的过期时间为现在,默认为90天。目的是放弃所有未关联对象恢复的可能性,因为reflog 是找寻它们踪迹的最后途径了。

    ‌step 2: $ git reflog

    //查看是否清空了引用记录

    ‌step 3: $ git prune

    //执行清除命令,清除所有未关联的对象!

    2.自动整理法

    ‌step 1: $ git reflog expire --expire=now --all

    //设置所有未关联对象过期时间为现在,默认为90天。

    ‌step 2: $ git gc  [--prune=now]

    //不加参数时,默认会清理两周之前产生的所有未关联的文件对象,加上参数则清理现在之前所有未关联文件对象。

    *可以通过设置gc.auto 的值(默认值6700),当对象库.git/objects/17/子目录中的对象超过(gc.auto+255)/256 时,来使gc 自动执行整理命令。

  • 相关阅读:
    component
    js的for循环中DOM变化不了,在循环结束才起效的问题
    mongodb 遇见不可行
    vue.js中$emit的理解
    最近前端关键词-模块化、前后端分离、单页面应用
    webpack的使用1
    一维数组的声明和使用
    ASP.net中的几种分页方法
    各种排序及原理
    数据结构-算法
  • 原文地址:https://www.cnblogs.com/leon1124/p/14039872.html
Copyright © 2011-2022 走看看