8 cd "$cfg_reporoot/$proj.git"
10 if check_interval lastgc
$cfg_min_gc_interval; then
11 progress
"= [$proj] garbage check skip (last at $(config_get lastgc))"
15 progress
"x [$proj] garbage check disabled"
18 progress
"+ [$proj] garbage check (`date`)"
20 # safe pruning: we put all our objects to all forks, then we can
21 # safely get rid of extra ones; repacks in forks will get rid of
22 # the redundant ones again then
24 if [ -d "$forkdir" ]; then
25 get_repo_list
"$forkdir/" |
27 # Match objects in parent project
28 for d
in objects
/?? objects
/pack
; do
29 [ "$d" != "objects/??" ] ||
continue
30 mkdir
-p "$cfg_reporoot/$forkdir/$fork.git/$d"
31 ln -f "$d"/* "$cfg_reporoot/$forkdir/$fork.git/$d"
36 quiet
=; [ -n "$show_progress" ] || quiet
=-q
37 git repack
-a -d --window-memory=1G
-l $quiet
39 git update-server-info
40 config_set lastgc
"$(date -R)"
42 progress
"- [$proj] garbage check (`date`)"