Commit Graph

28639 Commits

Author SHA1 Message Date
Junio C Hamano
7586e50eea Merge branch 'jk/repack-no-explode-objects-from-old-pack' into next
Will merge to 'next'.

By Jeff King
* jk/repack-no-explode-objects-from-old-pack:
  gc: do not explode objects which will be immediately pruned
2012-04-15 23:06:54 -07:00
Junio C Hamano
94367a8fdf Merge branch 'jk/rebase-i-submodule-conflict-only' into next
Giving "--continue" to a conflicted "rebase -i" session skipped a commit
that only results in changes to submodules.

Will merge to 'next'.

By John Keeping
* jk/rebase-i-submodule-conflict-only:
  rebase -i continue: don't skip commits that only change submodules
2012-04-15 23:06:43 -07:00
Junio C Hamano
40797d9167 Merge branch 'sl/test-wc-l-line-count' into next
Will merge to 'next'.

By Stefano Lattarini
* sl/test-wc-l-line-count:
  tests: modernise style: more uses of test_line_count
2012-04-15 23:06:36 -07:00
Junio C Hamano
b2e59381ac Merge branch 'rl/show-empty-prefix' into next
Will merge to 'next'.

By Ross Lagerwall
* rl/show-empty-prefix:
  rev-parse --show-prefix: add in trailing newline
2012-04-15 23:06:36 -07:00
Junio C Hamano
39fe527896 Merge branch 'rs/commit-list-sort-in-batch' into next
Will merge to 'next'.

By René Scharfe
* rs/commit-list-sort-in-batch:
  revision: insert unsorted, then sort in prepare_revision_walk()
  commit: use mergesort() in commit_list_sort_by_date()
  add mergesort() for linked lists
2012-04-15 23:06:35 -07:00
Junio C Hamano
1b1e9a18d1 Merge branch 'ld/git-p4-tags-and-labels' into next
By Luke Diamand
* ld/git-p4-tags-and-labels:
  git p4: import/export of labels to/from p4
  git p4: Fixing script editor checks
2012-04-15 23:06:11 -07:00
Junio C Hamano
81ea41a4f8 Merge branch 'pw/git-p4' into next
Will merge to 'next'.

By Pete Wyckoff
* pw/git-p4:
  git p4: use "git p4" directly in tests
  git p4: update name in script
  git-p4: move to toplevel
2012-04-15 23:06:11 -07:00
Junio C Hamano
704be8fe3b Merge branch 'ms/remote-usage-string' into next
As an independent follow-up, we may want to rethink how the overall usage
string and subcommand usage strings are maintained.

Will merge to 'next'.

By Michael Schubert
* ms/remote-usage-string:
  remote: update builtin usage
2012-04-15 23:06:10 -07:00
Junio C Hamano
0fc85c351d Merge branch 'jn/debian-customizes-default-editor' into next
Will merge to 'next'.

By Jonathan Nieder
* jn/debian-customizes-default-editor:
  var doc: advertise current DEFAULT_PAGER and DEFAULT_EDITOR settings
  var doc: default editor and pager are configurable at build time
2012-04-15 23:06:09 -07:00
Junio C Hamano
ce66b2dc9b Merge branch 'master' into next
By Clemens Buchacher (1) and Junio C Hamano (1)
* master:
  RelNotes: the first batch of topics graduated to 'master'
  merge overwrites unstaged changes in renamed file
2012-04-15 22:59:47 -07:00
Junio C Hamano
146fe8ce24 RelNotes: the first batch of topics graduated to 'master'
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-15 22:59:31 -07:00
Junio C Hamano
b22d301b24 Merge branch 'da/difftool-test'
Makes sure "difftool" options can be given in any order.

By David Aguilar
* da/difftool-test:
  t7800: Test difftool passing arguments to diff
2012-04-15 22:52:04 -07:00
Junio C Hamano
3ff999e16b Merge branch 'zj/test-cred-helper-nicer-prove'
Minor improvement to t0303.

By Zbigniew Jędrzejewski-Szmek
* zj/test-cred-helper-nicer-prove:
  t0303: resurrect commit message as test documentation
  t0303: immediately bail out w/o GIT_TEST_CREDENTIAL_HELPER
2012-04-15 22:51:56 -07:00
Junio C Hamano
4e520081b5 Merge branch 'jh/notes-merge-in-git-dir-worktree'
Running "notes merge --commit" failed to perform correctly when run
from any directory inside $GIT_DIR/.  When "notes merge" stops with
conflicts, $GIT_DIR/NOTES_MERGE_WORKTREE is the place a user edits
to resolve it.

By Johan Herland (3) and Junio C Hamano (1)
* jh/notes-merge-in-git-dir-worktree:
  notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the user's cwd
  notes-merge: use opendir/readdir instead of using read_directory()
  t3310: illustrate failure to "notes merge --commit" inside $GIT_DIR/
  remove_dir_recursively(): Add flag for skipping removal of toplevel dir
2012-04-15 22:51:45 -07:00
Junio C Hamano
3bec29bb07 Merge branch 'tr/maint-word-diff-regex-sticky'
The regexp configured with wordregex was incorrectly reused across files.

By Thomas Rast (2) and Johannes Sixt (1)
* tr/maint-word-diff-regex-sticky:
  diff: tweak a _copy_ of diff_options with word-diff
  diff: refactor the word-diff setup from builtin_diff_cmd
  t4034: diff.*.wordregex should not be "sticky" in --word-diff
2012-04-15 22:51:34 -07:00
Junio C Hamano
09b90fb3c0 Merge branch 'jn/diffstat-tests'
Some tests checked the "diff --stat" output when they do not have to,
which unnecessarily made things harder to verify under GETTEXT_POISON.

By Jonathan Nieder
* jn/diffstat-tests:
  diffstat summary line varies by locale: miscellany
  test: use numstat instead of diffstat in binary-diff test
  test: use --numstat instead of --stat in "git stash show" tests
  test: test cherry-pick functionality and output separately
  test: modernize funny-names test style
  test: use numstat instead of diffstat in funny-names test
  test: use test_i18ncmp when checking --stat output
2012-04-15 22:51:24 -07:00
Junio C Hamano
86c340e082 Merge branch 'jc/diff-algo-cleanup'
Resurrects the preparatory clean-up patches from another topic that was
discarded, as this would give a saner foundation to build on diff.algo
configuration option series.

* jc/diff-algo-cleanup:
  xdiff: PATIENCE/HISTOGRAM are not independent option bits
  xdiff: remove XDL_PATCH_* macros
2012-04-15 22:51:15 -07:00
Junio C Hamano
9eefd8ae8a Merge branch 'jc/commit-hook-authorship'
"git commit --author=$name" did not tell the name that was being recorded
in the resulting commit to hooks, even though it does do so when the end
user overrode the authorship via the "GIT_AUTHOR_NAME" environment
variable.

* jc/commit-hook-authorship:
  commit: pass author/committer info to hooks
  t7503: does pre-commit-hook learn authorship?
  ident.c: add split_ident_line() to parse formatted ident line
2012-04-15 22:51:01 -07:00
Junio C Hamano
47de6b0425 Merge branch 'nd/stream-more'
Use API to read blob data in smaller chunks in more places to reduce the
memory footprint.

By Nguyễn Thái Ngọc Duy (6) and Junio C Hamano (1)
* nd/stream-more:
  update-server-info: respect core.bigfilethreshold
  fsck: use streaming API for writing lost-found blobs
  show: use streaming API for showing blobs
  parse_object: avoid putting whole blob in core
  cat-file: use streaming API to print blobs
  Add more large blob test cases
  streaming: make streaming-write-entry to be more reusable
2012-04-15 22:50:39 -07:00
Clemens Buchacher
30fd3a5425 merge overwrites unstaged changes in renamed file
Signed-off-by: Clemens Buchacher <drizzd@aon.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-15 22:44:39 -07:00
Junio C Hamano
3bf1d831cc Merge branch 'bw/submodule-sed-solaris' into next
By Ben Walton
* bw/submodule-sed-solaris:
  Avoid bug in Solaris xpg4/sed as used in submodule
2012-04-12 14:02:22 -07:00
Junio C Hamano
ef3782e29b Merge branch 'jk/run-command-eacces' into next
When PATH contains an unreadable directory, alias expansion code did not
kick in, and failed with an error that said "git-subcmd" was not found.

By Jeff King (1) and Ramsay Jones (1)
* jk/run-command-eacces:
  run-command: treat inaccessible directories as ENOENT
  compat/mingw.[ch]: Change return type of exec functions to int
2012-04-12 14:02:22 -07:00
Junio C Hamano
288e1ade56 Merge branch 'jc/push-upstream-sanity' into next
Fix broken 'push to upstream' implementation.  "git push $there" without
refspec, when the current branch is set to push to a remote different from
$there, used to push to $there using the upstream information to a remote
unreleated to $there.

* jc/push-upstream-sanity:
  push: error out when the "upstream" semantics does not make sense
2012-04-12 14:02:21 -07:00
Junio C Hamano
e65ceb1982 Merge branch 'jk/add-p-skip-conflicts' into next
Excludes conflicted paths from "add -p" processing, as it is not prepared
to handle them.

By Jeff King
* jk/add-p-skip-conflicts:
  add--interactive: ignore unmerged entries in patch mode
2012-04-12 14:02:20 -07:00
Junio C Hamano
a2e153bfb3 Merge branch 'jc/commit-unedited-template' into next
When "git commit --template F" errors out because the user did not touch
the message, it claimed that it aborts due to "empty message", which was
utterly wrong.

By Junio C Hamano (4) and Adam Monsen (1)
* jc/commit-unedited-template:
  Documentation/git-commit: rephrase the "initial-ness" of templates
  git-commit.txt: clarify -t requires editing message
  commit: rephrase the error when user did not touch templated log message
  commit: do not trigger bogus "has templated message edited" check
  t7501: test the right kind of breakage
2012-04-12 14:02:19 -07:00
Junio C Hamano
0ff833b3c6 Merge branch 'bw/spawn-via-shell-path' into next
"sh" on the user's PATH may be utterly broken on some systems;
consistently use SHELL_PATH even from inside run-command API.

By Ben Walton
* bw/spawn-via-shell-path:
  Use SHELL_PATH from build system in run_command.c:prepare_shell_cmd
2012-04-12 14:02:19 -07:00
Junio C Hamano
611d3189b9 Merge branch 'wk/gitweb-snapshot-use-if-modified-since' into next
Makes 'snapshot' request to "gitweb" honor If-Modified-Since: header,
based on the commit date.

By W. Trevor King
* wk/gitweb-snapshot-use-if-modified-since:
  gitweb: add If-Modified-Since handling to git_snapshot().
  gitweb: refactor If-Modified-Since handling
  gitweb: add `status` headers to git_feed() responses.
2012-04-12 14:02:18 -07:00
Junio C Hamano
b2d01364c1 Merge branch 'jk/http-backend-keep-committer-ident-env' into next
The smart-http backend used to always override GIT_COMMITTER_* variables
with REMOTE_USER and REMOTE_ADDR.

By Jeff King
* jk/http-backend-keep-committer-ident-env:
  http-backend: respect existing GIT_COMMITTER_* variables
2012-04-12 14:02:17 -07:00
Junio C Hamano
cf5d599599 Merge branch 'jc/am-report-3way' into next
* jc/am-report-3way:
  am -3: list the paths that needed 3-way fallback
2012-04-12 14:02:16 -07:00
Junio C Hamano
ddbf96d269 Merge branch 'jb/am-include' into next
By Johannes Berg
* jb/am-include:
  am: support --include option
2012-04-12 14:02:15 -07:00
Junio C Hamano
68f346d4e0 Merge branch 'sl/autoconf' into next
Updates our configure.ac to follow a better "autoconf" style.

By Stefano Lattarini
* sl/autoconf:
  configure: be more idiomatic
  configure: avoid some code repetitions thanks to m4_{push,pop}def
  configure: move definitions of private m4 macros before AC_INIT invocation
2012-04-12 14:02:15 -07:00
Junio C Hamano
7d0a438b1c Merge branch 'jk/branch-quiet' into next
Even with "-q"uiet option, "checkout" used to report setting up tracking.
Also "branch" learns "-q"uiet option to squelch informational message.

By Jeff King
* jk/branch-quiet:
  teach "git branch" a --quiet option
  checkout: suppress tracking message with "-q"
2012-04-12 14:02:14 -07:00
Junio C Hamano
b4d92e3b99 Merge branch 'rs/combine-diff-zero-context-at-the-beginning' into next
Fixes an age old corner case bug in combine diff (only triggered with -U0
and the hunk at the beginning of the file needs to be shown).

By René Scharfe
* rs/combine-diff-zero-context-at-the-beginning:
  combine-diff: fix loop index underflow
2012-04-12 14:02:13 -07:00
Junio C Hamano
d1d95c5727 Merge branch 'jk/diff-no-rename-empty' into next
Forbids rename detection logic from matching two empty files as renames
during merge-recursive to prevent mismerges.

By Jeff King
* jk/diff-no-rename-empty:
  merge-recursive: don't detect renames of empty files
  teach diffcore-rename to optionally ignore empty content
  make is_empty_blob_sha1 available everywhere
  drop casts from users EMPTY_TREE_SHA1_BIN
2012-04-12 14:02:11 -07:00
Junio C Hamano
4c2031cc66 Merge branch 'jc/fmt-merge-msg-people' into next
The "fmt-merge-msg" command learns to list the primary contributors
involved in the side topic you are merging.

* jc/fmt-merge-msg-people:
  fmt-merge-msg: show those involved in a merged series
2012-04-12 14:02:10 -07:00
Junio C Hamano
6958b54395 Merge branch 'rs/unpack-trees-leakfix' into next
Originally merged to 'next' on 2012-03-07

By René Scharfe
* rs/unpack-trees-leakfix:
  unpack-trees: plug minor memory leak
  unpack-trees: don't perform any index operation if we're not merging
2012-04-12 14:02:10 -07:00
Junio C Hamano
b0613cde63 Merge branch 'ct/advise-push-default' into next
Breaks down the cases in which "git push" fails due to non-ff into three
categories, and gives separate advise messages.  This should be a good
change regardless of mm/push-default-switch-warning topic.

Kicked back to 'pu'.
Needs adjusting the existing tests.

By Christopher Tiwald (2) and Jeff King (1)
* ct/advise-push-default:
  Fix httpd tests that broke when non-ff push advice changed
  clean up struct ref's nonfastforward field
  push: Provide situational hints for non-fast-forward errors
2012-04-12 14:02:09 -07:00
Christopher Tiwald
0aff719f48 Fix httpd tests that broke when non-ff push advice changed
Signed-off-by: Christopher Tiwald <christiwald@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-12 13:48:52 -07:00
Junio C Hamano
cd76fcb224 Merge branch 'nl/rebase-i-cheat-sheet' into next
Originally merged to 'next' on 2012-03-20

Will merge to 'next'.

* nl/rebase-i-cheat-sheet:
  rebase -i: remind that the lines are top-to-bottom
2012-04-12 11:42:58 -07:00
Junio C Hamano
280a6e5795 Merge branch 'jc/maint-clean-nested-worktree-in-subdir' into next
Originally merged to 'next' on 2012-03-20

"git clean -d -f" (not "-d -f -f") is supposed to protect nested working
trees of independent git repositories that exist in the current project
working tree from getting removed, but the protection applied only to such
working trees that are at the top-level of the current project by mistake.

Will merge to 'next'.

* jc/maint-clean-nested-worktree-in-subdir:
  clean: preserve nested git worktree in subdirectories
2012-04-12 11:42:57 -07:00
Junio C Hamano
f245c01443 Merge branch 'da/difftool-test' into next
Makes sure "difftool" options can be given in any order.

Will merge to 'master'.

By David Aguilar
* da/difftool-test:
  t7800: Test difftool passing arguments to diff
2012-04-11 12:17:56 -07:00
Junio C Hamano
9169614b79 Merge branch 'zj/test-cred-helper-nicer-prove' into next
Minor improvement to t0303.
Will merge to 'master'.

By Zbigniew Jędrzejewski-Szmek
* zj/test-cred-helper-nicer-prove:
  t0303: resurrect commit message as test documentation
  t0303: immediately bail out w/o GIT_TEST_CREDENTIAL_HELPER
2012-04-11 12:17:55 -07:00
Junio C Hamano
6042ef588b Merge branch 'jh/notes-merge-in-git-dir-worktree' into next
Running "notes merge --commit" failed to perform correctly when run
from any directory inside $GIT_DIR/.  When "notes merge" stops with
conflicts, $GIT_DIR/NOTES_MERGE_WORKTREE is the place a user edits
to resolve it.

Will merge to 'master'.

By Johan Herland (3) and Junio C Hamano (1)
* jh/notes-merge-in-git-dir-worktree:
  notes-merge: Don't remove .git/NOTES_MERGE_WORKTREE; it may be the user's cwd
  notes-merge: use opendir/readdir instead of using read_directory()
  t3310: illustrate failure to "notes merge --commit" inside $GIT_DIR/
  remove_dir_recursively(): Add flag for skipping removal of toplevel dir
2012-04-11 12:17:55 -07:00
Junio C Hamano
24d14deb38 Merge branch 'tr/maint-word-diff-regex-sticky' into next
The regexp configured with wordregex was incorrectly reused across
files.

Will merge to 'master'.

By Thomas Rast (2) and Johannes Sixt (1)
* tr/maint-word-diff-regex-sticky:
  diff: tweak a _copy_ of diff_options with word-diff
  diff: refactor the word-diff setup from builtin_diff_cmd
  t4034: diff.*.wordregex should not be "sticky" in --word-diff
2012-04-11 12:17:54 -07:00
Junio C Hamano
7365e410d6 Merge branch 'jn/diffstat-tests' into next
Some tests checked the "diff --stat" output when they do not have to,
which unnecessarily made things harder to verify under GETTEXT_POISON.

Will merge to 'master'.

By Jonathan Nieder
* jn/diffstat-tests:
  diffstat summary line varies by locale: miscellany
  test: use numstat instead of diffstat in binary-diff test
  test: use --numstat instead of --stat in "git stash show" tests
  test: test cherry-pick functionality and output separately
  test: modernize funny-names test style
  test: use numstat instead of diffstat in funny-names test
  test: use test_i18ncmp when checking --stat output
2012-04-11 12:17:54 -07:00
Junio C Hamano
f2c6b9ac6a Merge branch 'jc/diff-algo-cleanup' into next
Resurrects the preparatory clean-up patches from another topic that was
discarded, as this would give a saner foundation to build on diff.algo
configuration option series.

Will merge to 'master'.

* jc/diff-algo-cleanup:
  xdiff: PATIENCE/HISTOGRAM are not independent option bits
  xdiff: remove XDL_PATCH_* macros
2012-04-11 12:17:54 -07:00
Junio C Hamano
15ec4d4ec0 Merge branch 'jc/commit-hook-authorship' into next
"git commit --author=$name" did not tell the name that was being
recorded in the resulting commit to hooks, even though it does do so
when the end user overrode the authorship via the "GIT_AUTHOR_NAME"
environment variable.

Will merge to 'master'.

* jc/commit-hook-authorship:
  commit: pass author/committer info to hooks
  t7503: does pre-commit-hook learn authorship?
  ident.c: add split_ident_line() to parse formatted ident line
2012-04-11 12:17:53 -07:00
Junio C Hamano
b17684d9dd Merge branch 'nd/stream-more' into next
Use API to read blob data in smaller chunks in more places to
reduce the memory footprint.  In general, looked fairly good.

Will merge to 'master'.

By Nguyễn Thái Ngọc Duy (6) and Junio C Hamano (1)
* nd/stream-more:
  update-server-info: respect core.bigfilethreshold
  fsck: use streaming API for writing lost-found blobs
  show: use streaming API for showing blobs
  parse_object: avoid putting whole blob in core
  cat-file: use streaming API to print blobs
  Add more large blob test cases
  streaming: make streaming-write-entry to be more reusable
2012-04-11 12:17:52 -07:00
Junio C Hamano
36e6c803a1 Kick off post 1.7.10 cycle
I tentatively named the release notes "1.7.11" but this may have to
be renamed to "1.8" or some other name later.  Let's see how well
we would do during this cycle.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-11 12:17:17 -07:00
Jeff King
7e52f5660e gc: do not explode objects which will be immediately pruned
When we pack everything into one big pack with "git repack
-Ad", any unreferenced objects in to-be-deleted packs are
exploded into loose objects, with the intent that they will
be examined and possibly cleaned up by the next run of "git
prune".

Since the exploded objects will receive the mtime of the
pack from which they come, if the source pack is old, those
loose objects will end up pruned immediately. In that case,
it is much more efficient to skip the exploding step
entirely for these objects.

This patch teaches pack-objects to receive the expiration
information and avoid writing these objects out. It also
teaches "git gc" to pass the value of gc.pruneexpire to
repack (which in turn learns to pass it along to
pack-objects) so that this optimization happens
automatically during "git gc" and "git gc --auto".

Signed-off-by: Jeff King <peff@peff.net>
Acked-by: Nicolas Pitre <nico@fluxnic.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2012-04-11 11:09:49 -07:00