]> source.dussan.org Git - jgit.git/commit
Garbage collector for FileRepositories 05/4705/21
authorChristian Halstrick <christian.halstrick@sap.com>
Wed, 9 May 2012 08:45:17 +0000 (10:45 +0200)
committerRobin Rosenberg <robin.rosenberg@dewire.com>
Sun, 29 Jul 2012 13:43:50 +0000 (15:43 +0200)
commit4c3f017a776f71870266f3e26dacbb092a98ef67
treec7a02cfd430999392c5951033aeddabee7a24080
parent7f7a3f9b783bb21dce2bbe57aee24cf92b7de400
Garbage collector for FileRepositories

Implements a garbage collector for FileRepositories. Main ideas are
copied from the garbage collector for DFS based repos
(DfsGarbageCollector). Added functionalities are
- pruning loose objects
- handling of the index
- packing refs
- handling of reflogs (objects referenced from reflog will not be
pruned/)

These are features of a GC which are not handled in this change and
which should come with subsequent changes:
- unpacking packed objects into loose objects (to support that pruning
packed objects doesn't delete them until they are older than two weeks)
- expiration of reflogs
- support for configuration parameters (e.g. gc.pruneExpire)

Change-Id: I14ea5cb7e0fd1b5c50b994fd77f4e05bfbb9d911
Signed-off-by: Christian Halstrick <christian.halstrick@sap.com>
org.eclipse.jgit.pgm/META-INF/services/org.eclipse.jgit.pgm.TextBuiltin
org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/debug/Gc.java [new file with mode: 0644]
org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/GCTest.java [new file with mode: 0644]
org.eclipse.jgit.test/tst/org/eclipse/jgit/storage/file/RefDirectoryTest.java
org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties
org.eclipse.jgit/src/org/eclipse/jgit/internal/JGitText.java
org.eclipse.jgit/src/org/eclipse/jgit/storage/file/GC.java [new file with mode: 0644]
org.eclipse.jgit/src/org/eclipse/jgit/storage/file/PackFile.java
org.eclipse.jgit/src/org/eclipse/jgit/storage/file/RefDirectory.java