分享一个 Git 存储库治理利器 - hot - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
git
Pro Git
Atlassian Git Tutorial
Pro Git 简体中文翻译
GitX
forcecharlie
V2EX    git

分享一个 Git 存储库治理利器 - hot

  •  
  •   forcecharlie 99 天前 2390 次点击
    这是一个创建于 99 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近我们在下一代版本控制系统 HugeSCM (https://github.com/antgroup/hugescm)整合了一个 Git 存储库治理利器 hot ,现在分享给 v 友,它支持很多的场景:

    • 你可以使用 hot size (原始大小)/hot az (近似压缩大小) 查看仓库中的大文件。
    • Git 存储库误提交了密码凭证等,可以使用 hot remove 删除并重写历史记录,hot remove 的重写速度特别快(通常比 BFG 之类的工具快)。
    • 你也可以直接使用 hot smart 交互式操作删除仓库中的大文件,它结合了 size, remove 命令(如: hot smart -L20m)。
    • 你可以使用 hot mc 将 Git 存储库的对象格式迁移到 SHA256,也可以从 SHA256 的迁移到 SHA1应该是第一个 Git SHA256 迁移工具)。
    • 仓库无效分支标签太多,可以使用 hot prune-refs (按前缀匹配)/hot expire-refs (按过期时间,是否合并) 删除,亦可以使用 hot scan-refs 查看分支的情况。
    • 你可以使用 hot unbranch 将存储库的历史线性化,也就是不包含任何合并点。
    • 你亦可以使用 hot unbranch -K1 master -Tnew-branch 基于特定的版本创建一个孤儿分支,这将保留最近的历史,可用于开源或者重置历史场景。
    • 你可以使用 hot cat 查看存储库中的文件,commit/tree/tag/blob,其中 commit/tree/tag 可以使用 --json 输出成 JSONblob 则能智能的使用 16 进制输出二进制文件。
    hot cat HEAD:docs/images/blob.png 
    image

    比如你查看仓库的信息,可以这样做:

    hot stat 
    image

    将 Git 存储库对象格式从 SHA1 迁移到 SHA256:

    hot mc https://github.com/antgroup/hugescm.git 
    image
    2 条回复    2025-09-08 12:06:37 +08:00
    Devifish
        1
    Devifish  
       99 天前
    能支持 git 大文件迁移 git lfs 并重写历史记录么
    forcecharlie
        2
    forcecharlie  
    OP
       99 天前
    @Devifish git lfs 就自带了 git lfs migrate 能力,所以这个我们并不提供。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3470 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 97ms UTC 10:37 PVG 18:37 LAX 02:37 JFK 05:37
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86