{"thread":{"id":"25972","subject":"[PATCH] git-filter-branch.txt: (Checklist for Shrinking): Adjust commands and options","startedAt":"2010-12-05T19:14:47Z","lastAt":"2010-12-05T19:14:47Z","messageCount":1,"participants":["jari.aalto@cante.net"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"157364","messageId":"1291576487-12120-1-git-send-email-jari.aalto@cante.net","threadId":"25972","inReplyTo":null,"subject":"[PATCH] git-filter-branch.txt: (Checklist for Shrinking): Adjust commands and options","fromName":"","fromEmail":"jari.aalto@cante.net","sentAt":"2010-12-05T19:14:47Z","receivedAt":"2010-12-05T19:14:47Z","isPatch":true,"sender":{"key":"jari.aalto@cante.net","avatar":"https://avatars.githubusercontent.com/u/34601?v=4"},"body":"From: Jari Aalto <jari.aalto@cante.net>\n\nAdd a little more explanation to bullet that talks about cryptic\n--tag-name-filter options. Suggest also option --expire-unreachable=0 in\n\"git reflog\" call. Add option --aggressive to garbage collect call.\n\nSigned-off-by: Jari Aalto <jari.aalto@cante.net>\n---\n Documentation/git-filter-branch.txt |   16 +++++++++-------\n 1 files changed, 9 insertions(+), 7 deletions(-)\n\ndiff --git a/Documentation/git-filter-branch.txt b/Documentation/git-filter-branch.txt\nindex 796e748..180fdaa 100644\n--- a/Documentation/git-filter-branch.txt\n+++ b/Documentation/git-filter-branch.txt\n@@ -380,8 +380,10 @@ objects until you tell it to.  First make sure that:\n   over its lifetime.  `git log \\--name-only \\--follow \\--all \\--\n   filename` can help you find renames.\n \n-* You really filtered all refs: use `\\--tag-name-filter cat \\--\n-  \\--all` when calling git-filter-branch.\n+* You really filtered all refs. Without the following, you could have\n+  some branches or tags still pointing to the commits before\n+  filtering:\n+  `\\--tag-name-filter cat \\-- \\--all`\n \n Then there are two ways to get a smaller repository.  A safer way is\n to clone, that keeps your original intact.\n@@ -399,12 +401,12 @@ warned.\n   for-each-ref \\--format=\"%(refname)\" refs/original/ | xargs -n 1 git\n   update-ref -d`.\n \n-* Expire all reflogs with `git reflog expire \\--expire=now \\--all`.\n-\n-* Garbage collect all unreferenced objects with `git gc \\--prune=now`\n-  (or if your git-gc is not new enough to support arguments to\n-  `\\--prune`, use `git repack -ad; git prune` instead).\n+* Expire all reflogs with `git reflog expire \\--expire=now \\--all\n+  \\--expire-unreachable=0`.\n \n+* Garbage collect all unreferenced objects with `git gc \\--aggressive\n+  \\--prune=now`. Or if your git-gc is not new enough to support\n+  arguments to `\\--prune`, use `git repack -ad; git prune` instead.\n \n Author\n ------\n-- \n1.7.2.3\n"}]}