git大文件记录清除解决方案

发布时间:2023-05-18 17:30

参考:

https://blog.csdn.net/Y0W1as5eg37urFdS/article/details/123539994

https://www.manongdao.com/article-2342370.html

概述

git 概述

Git 是一个分布式版本控制软件,最初由 「林纳斯·托瓦兹」 创作,于 2005 年发布。最初目的是为更好地管理 Linux 内核开发。Git 在本地磁盘上就保存着所有有关当前项目的历史更新,处理速度快。Git 中的绝大多数操作都只需要访问本地文件和资源,不用实时联网。

「Git LFS」(Large File Storage - 大文件存储)是可以把⾳乐、图⽚、视频等指定的任意文件存在 Git仓库之外,而在 Git 仓库中用一个占用空间 1KB 不到的文本指针来代替的小⼯具。通过把大文件存储在 Git 仓库之外,可以减小 Git 仓库本身的体积,使克隆 Git 仓库的速度加快,也使得 Git 不会因为仓库中充满大⽂件而损失性能。

使用 Git LFS ,在默认情况下,只有当前签出的 commit 下的 LFS 对象的当前版本会被下载。此外,也可以做配置,只取由 Git LFS 管理的某些特定文件的实际内容,而对于其他由 Git LFS 管理的⽂件则只保留文件指针,从而节省带宽,加快克隆仓库的速度;也可以配置⼀次获取大文件的最近版本,从而能方便地检查大文件的近期变动。


.git 目录

虽然 .git 这个隐藏目录并不算在代码体积之后,但是拉代码的时候,是需要拉下来的,因为里面包含之前的提交记录等信息。这就会导致下载速度变的很慢。

├── HEAD
├── branches
├── index
├── logs
│   ├── HEAD
│   └── refs
│       └── heads
│           └── master
├── objects
│   ├── 88
│   │   └── 23efd7fa394844ef4af3c649823fa4aedefec5
│   ├── 91
│   │   └── 0fc16f5cc5a91e6712c33aed4aad2cfffccb73
│   ├── 9f
│   │   └── 4d96d5b00d98959ea9960f069585ce42b1349a
│   ├── info
│   └── pack
└── refs
    ├── heads
    │   └── master
    └── tags
  • description:用于GitWeb程序
  • config:配置特定于该仓库的设置
  • hooks:放置客户端或服务端的hook脚本
  • HEAD:指明当前处于哪个分支
  • objects:Git对象存储目录
  • refs:Git引用存储目录
  • branches:放置分支引用的目录

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号