Add support for "local" packing

This adds the "--local" flag to git-pack-objects, which acts like
"--incremental", except that instead of ignoring all packed objects, it
only ignores objects that are packed and in an alternate object tree.

As a result, it effectively only does a local re-pack: any remote-packed
objects will stay in the alternate object directories.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
1 file changed
tree: e79ca82198cb9add48e33156aa0e4cd238f7f9a2
  1. arm/
  2. compat/
  3. debian/
  4. Documentation/
  5. mozilla-sha1/
  6. ppc/
  7. t/
  8. templates/
  9. .gitignore
  10. apply.c
  11. blob.c
  12. blob.h
  13. cache.h
  14. cat-file.c
  15. checkout-index.c
  16. clone-pack.c
  17. cmd-rename.sh
  18. commit-tree.c
  19. commit.c
  20. commit.h
  21. config.c
  22. connect.c
  23. convert-objects.c
  24. COPYING
  25. count-delta.c
  26. count-delta.h
  27. csum-file.c
  28. csum-file.h
  29. daemon.c
  30. date.c
  31. delta.h
  32. diff-delta.c
  33. diff-files.c
  34. diff-index.c
  35. diff-stages.c
  36. diff-tree.c
  37. diff.c
  38. diff.h
  39. diffcore-break.c
  40. diffcore-order.c
  41. diffcore-pathspec.c
  42. diffcore-pickaxe.c
  43. diffcore-rename.c
  44. diffcore.h
  45. entry.c
  46. environment.c
  47. epoch.c
  48. epoch.h
  49. fetch-pack.c
  50. fetch.c
  51. fetch.h
  52. fsck-objects.c
  53. get-tar-commit-id.c
  54. git-add.sh
  55. git-am.sh
  56. git-applymbox.sh
  57. git-applypatch.sh
  58. git-archimport.perl
  59. git-bisect.sh
  60. git-branch.sh
  61. git-checkout.sh
  62. git-cherry.sh
  63. git-clone.sh
  64. git-commit.sh
  65. git-core.spec.in
  66. git-count-objects.sh
  67. git-cvsimport.perl
  68. git-diff.sh
  69. git-fetch.sh
  70. git-findtags.perl
  71. git-fmt-merge-msg.perl
  72. git-format-patch.sh
  73. git-grep.sh
  74. git-log.sh
  75. git-ls-remote.sh
  76. git-merge-octopus.sh
  77. git-merge-one-file.sh
  78. git-merge-recursive.py
  79. git-merge-resolve.sh
  80. git-merge-stupid.sh
  81. git-merge.sh
  82. git-octopus.sh
  83. git-parse-remote.sh
  84. git-prune.sh
  85. git-pull.sh
  86. git-push.sh
  87. git-rebase.sh
  88. git-relink.perl
  89. git-rename.perl
  90. git-repack.sh
  91. git-request-pull.sh
  92. git-reset.sh
  93. git-resolve.sh
  94. git-revert.sh
  95. git-send-email.perl
  96. git-sh-setup.sh
  97. git-shortlog.perl
  98. git-status.sh
  99. git-tag.sh
  100. git-verify-tag.sh
  101. git-whatchanged.sh
  102. git.sh
  103. gitk
  104. gitMergeCommon.py
  105. hash-object.c
  106. http-fetch.c
  107. ident.c
  108. index-pack.c
  109. index.c
  110. init-db.c
  111. INSTALL
  112. local-fetch.c
  113. ls-files.c
  114. ls-tree.c
  115. mailinfo.c
  116. mailsplit.c
  117. Makefile
  118. merge-base.c
  119. merge-index.c
  120. mktag.c
  121. object.c
  122. object.h
  123. pack-check.c
  124. pack-objects.c
  125. pack.h
  126. patch-delta.c
  127. patch-id.c
  128. path.c
  129. peek-remote.c
  130. pkt-line.c
  131. pkt-line.h
  132. prune-packed.c
  133. quote.c
  134. quote.h
  135. read-cache.c
  136. read-tree.c
  137. README
  138. receive-pack.c
  139. refs.c
  140. refs.h
  141. rev-list.c
  142. rev-parse.c
  143. rsh.c
  144. rsh.h
  145. run-command.c
  146. run-command.h
  147. send-pack.c
  148. server-info.c
  149. setup.c
  150. sha1_file.c
  151. sha1_name.c
  152. show-branch.c
  153. show-index.c
  154. ssh-fetch.c
  155. ssh-pull.c
  156. ssh-push.c
  157. ssh-upload.c
  158. strbuf.c
  159. strbuf.h
  160. stripspace.c
  161. symbolic-ref.c
  162. tag.c
  163. tag.h
  164. tar-tree.c
  165. test-date.c
  166. test-delta.c
  167. tree.c
  168. tree.h
  169. unpack-file.c
  170. unpack-objects.c
  171. update-index.c
  172. update-ref.c
  173. update-server-info.c
  174. upload-pack.c
  175. usage.c
  176. var.c
  177. verify-pack.c
  178. write-tree.c