Skip to content

Instantly share code, notes, and snippets.

@vnagara
Last active December 15, 2015 19:29
Show Gist options
  • Save vnagara/5311296 to your computer and use it in GitHub Desktop.
Save vnagara/5311296 to your computer and use it in GitHub Desktop.
git gc don't work properly
duke@webmaker ~/tmp/c $ git --version
git version 1.8.2
duke@webmaker ~/tmp/c $ ll
total 80K
drwxr-xr-x 3 duke duke 4.0K Apr 4 17:13 .
drwxrwxrwt 23 root root 64K Apr 4 17:17 ..
-rw-r--r-- 1 duke duke 3 Apr 4 16:43 a
drwxr-xr-x 7 duke duke 4.0K Apr 4 17:20 .git
duke@webmaker ~/tmp/c $ rm -r .git/
rm: remove all arguments recursively? y
duke@webmaker ~/tmp/c $ git init
Initialized empty Git repository in /tmp/c/.git/
duke@webmaker ~/tmp/c $ cd ..
duke@webmaker ~/tmp $ du1 c
96K c/.git
104K c
duke@webmaker ~/tmp $ git init gittest
Initialized empty Git repository in /tmp/gittest/.git/
duke@webmaker ~/tmp $ cd gittest/
duke@webmaker ~/tmp/gittest $ echo some >t
duke@webmaker ~/tmp/gittest $ git add .
duke@webmaker ~/tmp/gittest $ git ci -m "Init"
[master (root-commit) d444b13] Init
1 file changed, 1 insertion(+)
create mode 100644 t
duke@webmaker ~/tmp/gittest $ cp ~/dwhelper/Katy\ Perry\ -\ E.T.\ \(Audio\).flv .
duke@webmaker ~/tmp/gittest $ ll
total 7.8M
drwxr-xr-x 3 duke duke 4.0K Apr 4 17:27 .
drwxrwxrwt 24 root root 64K Apr 4 17:26 ..
drwxr-xr-x 8 duke duke 4.0K Apr 4 17:27 .git
-rw-r--r-- 1 duke duke 7.7M Apr 4 17:27 Katy Perry - E.T. (Audio).flv
-rw-r--r-- 1 duke duke 5 Apr 4 17:26 t
duke@webmaker ~/tmp/gittest $ git co -b br
Switched to a new branch 'br'
duke@webmaker ~/tmp/gittest $ du -sh
7.8M .
duke@webmaker ~/tmp/gittest $ du --max-depth=1 -h
160K ./.git
7.8M .
duke@webmaker ~/tmp/gittest $ git add .
gduke@webmaker ~/tmp/gittest $ git ci -m "Add some big file"
[br 8572492] Add some big file
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 Katy Perry - E.T. (Audio).flv
duke@webmaker ~/tmp/gittest $ du --max-depth=1 -h
7.7M ./.git
16M .
duke@webmaker ~/tmp/gittest $ git br
* br
master
duke@webmaker ~/tmp/gittest $ git co master
Switched to branch 'master'
duke@webmaker ~/tmp/gittest $ git co master
Switched to branch 'master'
duke@webmaker ~/tmp/gittest $ git branch -D br
Deleted branch br (was 8572492).
duke@webmaker ~/tmp/gittest $ git gc --prune=now
Counting objects: 6, done.
Delta compression using up to 3 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (6/6), done.
Total 6 (delta 0), reused 0 (delta 0)
duke@webmaker ~/tmp/gittest $ du --max-depth=1 -h
7.6M ./.git
7.7M .
git --version
git init gittest
cd gittest/
echo some >t
git add .
git ci -m "Init"
cp ~/dwhelper/Katy\ Perry\ -\ E.T.\ \(Audio\).flv .
ll
git co -b br
du -sh
du --max-depth=1 -h
git add .
git ci -m "Add some big file"
du --max-depth=1 -h
git br
git co master
git branch -D br
git gc --prune=now
du --max-depth=1 -h
It solves by those commands:
git reflog expire --all --verbose --expire-unreachable=now
git gc --prune=now
or
git reflog expire --all --verbose --expire-unreachable=0
git gc --prune=0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment