> For the complete documentation index, see [llms.txt](https://yutakatay.gitbook.io/katapedia/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yutakatay.gitbook.io/katapedia/doc/gitnoripojitorigadekakunattatokinononoyari.md).

# Gitのリポジトリがでかくなったときの削減の昔のやり方

## 方法1

`git verify-pack -v .git/objects/pack/pack-*.idx |sort -k 3 -n |tail -100`

`git rev-list --objects --all | grep xxx`

`git gc --prune=now --aggressive`

<http://techracho.bpsinc.jp/baba/2012_05_22/5594>

<https://git-scm.com/book/ja/v1/Gitの内側-メインテナンスとデータリカバリ>

## 方法2

調べる

```
git rev-list --all --objects |     sed -n $(git rev-list --objects --all |     cut -f1 -d' ' |     git cat-file --batch-check |     grep blob |     sort -n -k 3 |     tail -n40 |     while read hash type size; do
echo -n "-e s/$hash/$size/p ";
done) |     sort -n -k1
```

削除する

```
git filter-branch -f  --index-filter 'git rm --force --cached --ignore-unmatch video/parasite-intro.avi'  -- --all
rm -Rf .git/refs/original
rm -Rf .git/logs/
git reflog expire --expire=now --all
git gc --prune=now
git gc --aggressive --prune=now
```

確認

```
git count-objects -v
```

<http://stackoverflow.com/questions/1029969/why-is-my-git-repository-so-big>
