meta data for this page
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
git:issues [2019/07/23 11:12] – niziak | git:issues [2023/07/17 14:02] (current) – niziak | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== | + | ====== |
+ | |||
+ | ====== fsck: dangling commit ===== | ||
+ | |||
+ | List details about dangling commits ([[https:// | ||
+ | <code bash> | ||
+ | git fsck --lost-found | grep " | ||
+ | </ | ||
+ | |||
+ | Cleanup: | ||
+ | <code bash> | ||
+ | git reflog expire --expire=now --all | ||
+ | git gc --prune=now --aggressive | ||
+ | git repack -a -d | ||
+ | </ | ||
+ | |||
+ | ====== Reduce | ||
It is important to check if git configured with default settings. | It is important to check if git configured with default settings. | ||
- | Especially forcing of creation of multiple smaller packs significantly increases | + | Especially forcing of creation of multiple smaller packs significantly increases |
+ | I.e. changing one 1.2G pack into multiple 256MB packs let, increases size of packs to 4.3GB :( | ||
<code bash> | <code bash> | ||
git config --global -l | git config --global -l | ||
git config --system -l | git config --system -l | ||
</ | </ | ||
+ | |||
Especially take attention for options like: | Especially take attention for options like: | ||
* deltaCacheSize = 10m | * deltaCacheSize = 10m | ||
Line 13: | Line 32: | ||
+ | Command <code bash>git gc</ | ||
+ | Compression of objects is also performed in RAM, then packs are written onto disc. | ||
+ | [[https:// | ||
+ | |||
+ | |||
+ | To prevent touching existing packs and exhaust system memory paramter '' | ||
+ | Another possibility is to mark some packs as '' | ||
Remove unreachable objects: | Remove unreachable objects: | ||
<code bash> | <code bash> | ||
+ | |||
+ | git count-objects -v | ||
+ | git gc --auto # this is enough to remove loose objects and repack repo | ||
git count-objects -v | git count-objects -v | ||
+ | # more instruction | ||
git repack -Ad # Remove dangling objects from packfiles | git repack -Ad # Remove dangling objects from packfiles | ||
git prune # Remove dangling loose objects | git prune # Remove dangling loose objects |