summaryrefslogtreecommitdiff
path: root/doc/administration/housekeeping.md
diff options
context:
space:
mode:
authorChris Wilson <chris@chrisjwilson.com>2016-12-30 14:58:22 +0800
committerChris Wilson <chris@chrisjwilson.com>2016-12-30 14:58:22 +0800
commitdeb0ff8bf25d195ba153f75b87256bfa85b3e8e7 (patch)
tree74a09eef9d85868a7127b64de50a5886e210c393 /doc/administration/housekeeping.md
parent358a2d8b0dac1ca7d82c10103d2dca4b73b412ae (diff)
downloadgitlab-ce-deb0ff8bf25d195ba153f75b87256bfa85b3e8e7.tar.gz
Clarify git housekeepingmrchrisw-repack-not-gc
This changed in https://gitlab.com/gitlab-org/gitlab-ce/commit/6bcc52a53678ca68001189c801497862d3f6e758 The current docs are not clear in stating that we also run a `git repack` and that we respect the admin application setting values.
Diffstat (limited to 'doc/administration/housekeeping.md')
-rw-r--r--doc/administration/housekeeping.md26
1 files changed, 19 insertions, 7 deletions
diff --git a/doc/administration/housekeeping.md b/doc/administration/housekeeping.md
index f846c06ca42..bb621b788f1 100644
--- a/doc/administration/housekeeping.md
+++ b/doc/administration/housekeeping.md
@@ -12,13 +12,24 @@ to turn it off, go to **Admin area > Settings**
## Manual housekeeping
-The housekeeping function runs `git gc` ([man page][man]) on the current
-project Git repository.
+The housekeeping function will run a `repack` or `gc` depending on the
+"Automatic Git repository housekeeping" settings configured in **Admin area > Settings**
-`git gc` runs a number of housekeeping tasks, such as compressing file
-revisions (to reduce disk space and increase performance) and removing
-unreachable objects which may have been created from prior invocations of
-`git add`.
+For example in the following scenario a `git repack -d` will be executed:
+
++ Project: pushes since gc counter (`pushes_since_gc`) = `10`
++ Git GC period = `200`
++ Full repack period = `50`
+
+When the `pushes_since_gc` value is 50 a `repack -A -d --pack-kept-objects` will run, similarly when
+the `pushes_since_gc` value is 200 a `git gc` will be run.
+
++ `git gc` ([man page][man-gc]) runs a number of housekeeping tasks,
+such as compressing filerevisions (to reduce disk space and increase performance)
+and removing unreachable objects which may have been created from prior invocations of
+`git add`.
+
++ `git repack` ([man page][man-repack]) re-organize existing packs into a single, more efficient pack.
You can find this option under your **[Project] > Edit Project**.
@@ -27,4 +38,5 @@ You can find this option under your **[Project] > Edit Project**.
![Housekeeping settings](img/housekeeping_settings.png)
[ce-2371]: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/2371 "Housekeeping merge request"
-[man]: https://www.kernel.org/pub/software/scm/git/docs/git-gc.html "git gc man page"
+[man-gc]: https://www.kernel.org/pub/software/scm/git/docs/git-gc.html "git gc man page"
+[man-repack]: https://www.kernel.org/pub/software/scm/git/docs/git-repack.html \ No newline at end of file