Code

git.git
12 years agogit-p4: cope with labels with empty descriptions
Luke Diamand [Thu, 19 Jan 2012 09:52:26 +0000 (09:52 +0000)]
git-p4: cope with labels with empty descriptions

Use an explicit length for the data in a label, rather
than EOT, so that labels with empty descriptions are
passed through correctly.

Signed-off-by: Luke Diamand <luke@diamand.org>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: handle p4 branches and labels containing shell chars
Luke Diamand [Thu, 19 Jan 2012 09:52:25 +0000 (09:52 +0000)]
git-p4: handle p4 branches and labels containing shell chars

Don't use shell expansion when detecting branches, as it will
fail if the branch name contains a shell metachar. Similarly
for labels.

Add additional test for branches with shell metachars.

Signed-off-by: Luke Diamand <luke@diamand.org>
Acked-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'pw/p4-view-updates'
Junio C Hamano [Fri, 6 Jan 2012 20:43:59 +0000 (12:43 -0800)]
Merge branch 'pw/p4-view-updates'

* pw/p4-view-updates:
  git-p4: view spec documentation
  git-p4: rewrite view handling
  git-p4: support single file p4 client view maps
  git-p4: sort client views by reverse View number
  git-p4: fix test for unsupported P4 Client Views
  git-p4: test client view handling

12 years agoSync with 1.7.8.3
Junio C Hamano [Fri, 6 Jan 2012 20:42:48 +0000 (12:42 -0800)]
Sync with 1.7.8.3

12 years agoGit 1.7.8.3 v1.7.8.3
Junio C Hamano [Fri, 6 Jan 2012 20:41:39 +0000 (12:41 -0800)]
Git 1.7.8.3

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'jn/maint-gitweb-utf8-fix' into maint
Junio C Hamano [Fri, 6 Jan 2012 20:36:43 +0000 (12:36 -0800)]
Merge branch 'jn/maint-gitweb-utf8-fix' into maint

* jn/maint-gitweb-utf8-fix:
  gitweb: Fix fallback mode of to_utf8 subroutine
  gitweb: Output valid utf8 in git_blame_common('data')
  gitweb: esc_html() site name for title in OPML
  gitweb: Call to_utf8() on input string in chop_and_escape_str()

12 years agoMerge branch 'maint-1.7.7' into maint
Junio C Hamano [Fri, 6 Jan 2012 20:35:12 +0000 (12:35 -0800)]
Merge branch 'maint-1.7.7' into maint

* maint-1.7.7:
  Documentation: rerere.enabled is the primary way to configure rerere

12 years agoMerge branch 'maint-1.7.6' into maint-1.7.7
Junio C Hamano [Fri, 6 Jan 2012 20:35:05 +0000 (12:35 -0800)]
Merge branch 'maint-1.7.6' into maint-1.7.7

* maint-1.7.6:
  Documentation: rerere.enabled is the primary way to configure rerere

12 years agoDocumentation: rerere.enabled is the primary way to configure rerere
Thomas Rast [Fri, 6 Jan 2012 13:08:02 +0000 (14:08 +0100)]
Documentation: rerere.enabled is the primary way to configure rerere

The wording seems to suggest that creating the directory is needed and the
setting of rerere.enabled is only for disabling the feature by setting it
to 'false'. But the configuration is meant to be the primary control and
setting it to 'true' will enable it; the rr-cache directory will be
created as necessary and the user does not have to create it.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'maint'
Junio C Hamano [Wed, 4 Jan 2012 19:21:42 +0000 (11:21 -0800)]
Merge branch 'maint'

* maint:
  t5550: repack everything into one file
  Catch invalid --depth option passed to clone or fetch

12 years agot5550: repack everything into one file
Clemens Buchacher [Wed, 4 Jan 2012 15:55:34 +0000 (16:55 +0100)]
t5550: repack everything into one file

Subsequently we assume that there is only one pack. Currently this is
true only by accident. Pass '-a -d' to repack in order to guarantee that
assumption to hold true.

The prune-packed command is now redundant since repack -d already calls
it.

Signed-off-by: Clemens Buchacher <drizzd@aon.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'nd/maint-parse-depth' into maint
Junio C Hamano [Wed, 4 Jan 2012 17:43:26 +0000 (09:43 -0800)]
Merge branch 'nd/maint-parse-depth' into maint

* nd/maint-parse-depth:
  Catch invalid --depth option passed to clone or fetch

12 years agoCatch invalid --depth option passed to clone or fetch
Nguyễn Thái Ngọc Duy [Wed, 4 Jan 2012 10:01:55 +0000 (17:01 +0700)]
Catch invalid --depth option passed to clone or fetch

Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: view spec documentation
Pete Wyckoff [Mon, 2 Jan 2012 23:05:54 +0000 (18:05 -0500)]
git-p4: view spec documentation

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: rewrite view handling
Pete Wyckoff [Mon, 2 Jan 2012 23:05:53 +0000 (18:05 -0500)]
git-p4: rewrite view handling

The old code was not very complete or robust.  Redo it.

This new code should be useful for a few possible additions
in the future:

    - support for * and %%n wildcards
    - allowing ... inside paths
    - representing branch specs (not just client specs)
    - tracking changes to views

Mark the remaining 12 tests in t9809 as fixed.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: support single file p4 client view maps
Gary Gibbons [Mon, 2 Jan 2012 23:05:52 +0000 (18:05 -0500)]
git-p4: support single file p4 client view maps

Perforce client views can map individual files,
mapping one //depot file path to one //client file path.
These mappings contain no meta/masking characters.
This patch add support for these file maps to
the currently supported '...' view mappings.

[pw: one test now suceeds]

Signed-off-by: Gary Gibbons <ggibbons@perforce.com>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: sort client views by reverse View number
Gary Gibbons [Mon, 2 Jan 2012 23:05:51 +0000 (18:05 -0500)]
git-p4: sort client views by reverse View number

Correct view sorting to support the Perforce order,
where client views are ordered and later views
override earlier view mappings.

[pw: one test now succeeds]

Signed-off-by: Gary Gibbons <ggibbons@perforce.com>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: fix test for unsupported P4 Client Views
Gary Gibbons [Mon, 2 Jan 2012 23:05:50 +0000 (18:05 -0500)]
git-p4: fix test for unsupported P4 Client Views

Change re method in test for unsupported Client View types
(containing %% or *) anywhere in the string rather than
at the begining.

[pw: two tests now succeed]

Signed-off-by: Gary Gibbons <ggibbons@perforce.com>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: test client view handling
Pete Wyckoff [Mon, 2 Jan 2012 23:05:49 +0000 (18:05 -0500)]
git-p4: test client view handling

Test many aspects of processing p4 client views with the
git-p4 option --use-client-spec.  16 out of 22 tests are
currently broken.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'pw/p4-docs-and-tests'
Junio C Hamano [Tue, 3 Jan 2012 22:09:28 +0000 (14:09 -0800)]
Merge branch 'pw/p4-docs-and-tests'

* pw/p4-docs-and-tests:
  git-p4: document and test submit options
  git-p4: test and document --use-client-spec
  git-p4: test --keep-path
  git-p4: test --max-changes
  git-p4: document and test --import-local
  git-p4: honor --changesfile option and test
  git-p4: document and test clone --branch
  git-p4: test cloning with two dirs, clarify doc
  git-p4: clone does not use --git-dir
  git-p4: introduce asciidoc documentation
  rename git-p4 tests

12 years agoMerge branch 'maint'
Junio C Hamano [Tue, 3 Jan 2012 21:48:00 +0000 (13:48 -0800)]
Merge branch 'maint'

* maint:
  docs: describe behavior of relative submodule URLs
  fix hang in git fetch if pointed at a 0 length bundle
  Documentation: read-tree --prefix works with existing subtrees
  Add MYMETA.json to perl/.gitignore

12 years agoMerge branch 'maint-1.7.7' into maint
Junio C Hamano [Tue, 3 Jan 2012 21:47:46 +0000 (13:47 -0800)]
Merge branch 'maint-1.7.7' into maint

* maint-1.7.7:
  docs: describe behavior of relative submodule URLs
  Documentation: read-tree --prefix works with existing subtrees
  Add MYMETA.json to perl/.gitignore

12 years agoMerge branch 'maint-1.7.6' into maint-1.7.7
Junio C Hamano [Tue, 3 Jan 2012 21:47:15 +0000 (13:47 -0800)]
Merge branch 'maint-1.7.6' into maint-1.7.7

* maint-1.7.6:
  Documentation: read-tree --prefix works with existing subtrees
  Add MYMETA.json to perl/.gitignore

12 years agodocs: describe behavior of relative submodule URLs
Jens Lehmann [Sun, 1 Jan 2012 15:13:16 +0000 (16:13 +0100)]
docs: describe behavior of relative submodule URLs

Since the relative submodule URLs have been introduced in f31a522a2d, they
do not conform to the rules for resolving relative URIs but rather to
those of relative directories.

Document that behavior.

Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agofix hang in git fetch if pointed at a 0 length bundle
Brian Harring [Tue, 3 Jan 2012 13:46:03 +0000 (05:46 -0800)]
fix hang in git fetch if pointed at a 0 length bundle

git-repo if interupted at the exact wrong time will generate zero
length bundles- literal empty files.  git-repo is wrong here, but
git fetch shouldn't effectively spin loop if pointed at a zero
length bundle.

Signed-off-by: Brian Harring <ferringb@chromium.org>
Helped-by: Johannes Sixt
Helped-by: Nguyen Thai Ngoc Duy
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoDocumentation: read-tree --prefix works with existing subtrees
Clemens Buchacher [Sat, 31 Dec 2011 11:50:56 +0000 (12:50 +0100)]
Documentation: read-tree --prefix works with existing subtrees

Since 34110cd4 (Make 'unpack_trees()' have a separate source and
destination index) it is no longer true that a subdirectory with
the same prefix must not exist.

Signed-off-by: Clemens Buchacher <drizzd@aon.at>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoAdd MYMETA.json to perl/.gitignore
Jack Nagel [Thu, 29 Dec 2011 04:42:05 +0000 (22:42 -0600)]
Add MYMETA.json to perl/.gitignore

ExtUtils::MakeMaker generates MYMETA.json in addition to MYMETA.yml
since version 6.57_07. As it suggests, it is just meta information about
the build and is cleaned up with 'make clean', so it should be ignored.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoUpdate draft release notes to 1.7.9
Junio C Hamano [Wed, 28 Dec 2011 20:07:22 +0000 (12:07 -0800)]
Update draft release notes to 1.7.9

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoSync with 1.7.8.2
Junio C Hamano [Wed, 28 Dec 2011 20:04:25 +0000 (12:04 -0800)]
Sync with 1.7.8.2

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoGit 1.7.8.2 v1.7.8.2
Junio C Hamano [Wed, 28 Dec 2011 19:49:09 +0000 (11:49 -0800)]
Git 1.7.8.2

Contains accumulated fixes since 1.7.8 that have been merged to the
'master' branch in preparation for the 1.7.9 release.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'jv/maint-config-set' into maint
Junio C Hamano [Wed, 28 Dec 2011 20:03:19 +0000 (12:03 -0800)]
Merge branch 'jv/maint-config-set' into maint

* jv/maint-config-set:
  Fix an incorrect reference to --set-all.

12 years agoMerge branch 'jk/follow-rename-score' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:49:37 +0000 (11:49 -0800)]
Merge branch 'jk/follow-rename-score' into maint

* jk/follow-rename-score:
  use custom rename score during --follow

12 years agoMerge branch 'jc/checkout-m-twoway' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:44:54 +0000 (11:44 -0800)]
Merge branch 'jc/checkout-m-twoway' into maint

* jc/checkout-m-twoway:
  t/t2023-checkout-m.sh: fix use of test_must_fail
  checkout_merged(): squelch false warning from some gcc
  Test 'checkout -m -- path'
  checkout -m: no need to insist on having all 3 stages

12 years agoMerge branch 'tr/doc-sh-setup' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:51 +0000 (11:42 -0800)]
Merge branch 'tr/doc-sh-setup' into maint

* tr/doc-sh-setup:
  git-sh-setup: make require_clean_work_tree part of the interface

12 years agoMerge branch 'jk/maint-strbuf-missing-init' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:46 +0000 (11:42 -0800)]
Merge branch 'jk/maint-strbuf-missing-init' into maint

* jk/maint-strbuf-missing-init:
  commit, merge: initialize static strbuf

12 years agoMerge branch 'jk/maint-push-v-is-verbose' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:42 +0000 (11:42 -0800)]
Merge branch 'jk/maint-push-v-is-verbose' into maint

* jk/maint-push-v-is-verbose:
  make "git push -v" actually verbose

12 years agoMerge branch 'jk/http-push-to-empty' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:37 +0000 (11:42 -0800)]
Merge branch 'jk/http-push-to-empty' into maint

* jk/http-push-to-empty:
  remote-curl: don't pass back fake refs

Conflicts:
remote-curl.c

12 years agoMerge branch 'jk/doc-fsck' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:33 +0000 (11:42 -0800)]
Merge branch 'jk/doc-fsck' into maint

* jk/doc-fsck:
  docs: brush up obsolete bits of git-fsck manpage

12 years agoMerge branch 'jc/maint-lf-to-crlf-keep-crlf' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:27 +0000 (11:42 -0800)]
Merge branch 'jc/maint-lf-to-crlf-keep-crlf' into maint

* jc/maint-lf-to-crlf-keep-crlf:
  lf_to_crlf_filter(): resurrect CRLF->CRLF hack

12 years agoMerge branch 'ef/setenv-putenv' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:42:24 +0000 (11:42 -0800)]
Merge branch 'ef/setenv-putenv' into maint

* ef/setenv-putenv:
  compat/setenv.c: error if name contains '='
  compat/setenv.c: update errno when erroring out

12 years agoMerge branch 'jc/advice-doc' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:39 +0000 (11:32 -0800)]
Merge branch 'jc/advice-doc' into maint

* jc/advice-doc:
  advice: Document that they all default to true

12 years agoMerge branch 'jn/maint-sequencer-fixes' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:39 +0000 (11:32 -0800)]
Merge branch 'jn/maint-sequencer-fixes' into maint

* jn/maint-sequencer-fixes:
  revert: stop creating and removing sequencer-old directory
  Revert "reset: Make reset remove the sequencer state"
  revert: do not remove state until sequence is finished
  revert: allow single-pick in the middle of cherry-pick sequence
  revert: pass around rev-list args in already-parsed form
  revert: allow cherry-pick --continue to commit before resuming
  revert: give --continue handling its own function

12 years agoMerge branch 'jk/maint-snprintf-va-copy' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:38 +0000 (11:32 -0800)]
Merge branch 'jk/maint-snprintf-va-copy' into maint

* jk/maint-snprintf-va-copy:
  compat/snprintf: don't look at va_list twice

12 years agoMerge branch 'jk/maint-push-over-dav' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:37 +0000 (11:32 -0800)]
Merge branch 'jk/maint-push-over-dav' into maint

* jk/maint-push-over-dav:
  http-push: enable "proactive auth"
  t5540: test DAV push with authentication

12 years agoMerge branch 'jk/maint-mv' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:36 +0000 (11:32 -0800)]
Merge branch 'jk/maint-mv' into maint

* jk/maint-mv:
  mv: be quiet about overwriting
  mv: improve overwrite warning
  mv: make non-directory destination error more clear
  mv: honor --verbose flag
  docs: mention "-k" for both forms of "git mv"

12 years agoMerge branch 'jk/fetch-no-tail-match-refs' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:36 +0000 (11:32 -0800)]
Merge branch 'jk/fetch-no-tail-match-refs' into maint

* jk/fetch-no-tail-match-refs:
  connect.c: drop path_match function
  fetch-pack: match refs exactly
  t5500: give fully-qualified refs to fetch-pack
  drop "match" parameter from get_remote_heads

12 years agoMerge branch 'ew/keepalive' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:36 +0000 (11:32 -0800)]
Merge branch 'ew/keepalive' into maint

* ew/keepalive:
  enable SO_KEEPALIVE for connected TCP sockets

12 years agoMerge branch 'ci/stripspace-docs' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:35 +0000 (11:32 -0800)]
Merge branch 'ci/stripspace-docs' into maint

* ci/stripspace-docs:
  Update documentation for stripspace

12 years agoMerge branch 'jh/fast-import-notes' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:35 +0000 (11:32 -0800)]
Merge branch 'jh/fast-import-notes' into maint

* jh/fast-import-notes:
  fast-import: Fix incorrect fanout level when modifying existing notes refs
  t9301: Add 2nd testcase exposing bugs in fast-import's notes fanout handling
  t9301: Fix testcase covering up a bug in fast-import's notes fanout handling

12 years agoMerge branch 'aw/rebase-i-stop-on-failure-to-amend' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:34 +0000 (11:32 -0800)]
Merge branch 'aw/rebase-i-stop-on-failure-to-amend' into maint

* aw/rebase-i-stop-on-failure-to-amend:
  rebase -i: interrupt rebase when "commit --amend" failed during "reword"

12 years agoMerge branch 'tj/maint-imap-send-remove-unused' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:34 +0000 (11:32 -0800)]
Merge branch 'tj/maint-imap-send-remove-unused' into maint

* tj/maint-imap-send-remove-unused:
  imap-send: Remove unused 'use_namespace' variable

12 years agoMerge branch 'jn/branch-move-to-self' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:33 +0000 (11:32 -0800)]
Merge branch 'jn/branch-move-to-self' into maint

* jn/branch-move-to-self:
  Allow checkout -B <current-branch> to update the current branch
  branch: allow a no-op "branch -M <current-branch> HEAD"

12 years agoMerge branch 'na/strtoimax' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:33 +0000 (11:32 -0800)]
Merge branch 'na/strtoimax' into maint

* na/strtoimax:
  Support sizes >=2G in various config options accepting 'g' sizes.
  Compatibility: declare strtoimax() under NO_STRTOUMAX
  Add strtoimax() compatibility function.

12 years agoMerge branch 'jk/refresh-porcelain-output' into maint
Junio C Hamano [Wed, 28 Dec 2011 19:32:32 +0000 (11:32 -0800)]
Merge branch 'jk/refresh-porcelain-output' into maint

* jk/refresh-porcelain-output:
  refresh_index: make porcelain output more specific
  refresh_index: rename format variables
  read-cache: let refresh_cache_ent pass up changed flags

12 years agoFix an incorrect reference to --set-all.
Jelmer Vernooij [Tue, 27 Dec 2011 02:03:45 +0000 (03:03 +0100)]
Fix an incorrect reference to --set-all.

Signed-off-by: Jelmer Vernooij <jelmer@samba.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: document and test submit options
Pete Wyckoff [Sun, 25 Dec 2011 02:07:40 +0000 (21:07 -0500)]
git-p4: document and test submit options

Clarify there is a -M option, but no -C.  These are both
configurable through variables.

Explain that the allowSubmit variable takes a comma-separated
list of branch names.

Catch earlier an invalid branch name given as an argument to
"git p4 clone".

Test option --origin, variable allowSubmit, and explicit master
branch name.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: test and document --use-client-spec
Pete Wyckoff [Sun, 25 Dec 2011 02:07:39 +0000 (21:07 -0500)]
git-p4: test and document --use-client-spec

The depot path is required, even with this option.  Make sure
git-p4 fails and exits with non-zero.

Contents in the specified depot path will be rearranged according
to the client spec.  Test this and add a note in the docs.

Leave an XXX suggesting that this is somewhat confusing behavior
that might be good to fix later.

Function stripRepoPath() looks at self.useClientSpec.  Make sure
this is set both for command-line option --use-client-spec and
for configuration variable git-p4.useClientSpec.  Test this.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: test --keep-path
Pete Wyckoff [Sun, 25 Dec 2011 02:07:38 +0000 (21:07 -0500)]
git-p4: test --keep-path

Make sure it leaves the path, below //depot, in git.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: test --max-changes
Pete Wyckoff [Sun, 25 Dec 2011 02:07:37 +0000 (21:07 -0500)]
git-p4: test --max-changes

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: document and test --import-local
Pete Wyckoff [Sun, 25 Dec 2011 02:07:36 +0000 (21:07 -0500)]
git-p4: document and test --import-local

Explain that it is needed on future syncs to find p4 branches
in refs/heads.  Test this behavior.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: honor --changesfile option and test
Pete Wyckoff [Sun, 25 Dec 2011 02:07:35 +0000 (21:07 -0500)]
git-p4: honor --changesfile option and test

When an explicit list of changes is given, it makes no sense to
use @all or @3,5 or any of the other p4 revision specifiers.
Make the code notice when this happens, instead of just ignoring
--changesfile.  Test it.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: document and test clone --branch
Pete Wyckoff [Sun, 25 Dec 2011 02:07:34 +0000 (21:07 -0500)]
git-p4: document and test clone --branch

Clone with --branch will not checkout HEAD, unless the branch
happens to be called the default refs/remotes/p4/master.  The
--branch option is most useful with sync; give an example of
that.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: test cloning with two dirs, clarify doc
Pete Wyckoff [Sun, 25 Dec 2011 02:07:33 +0000 (21:07 -0500)]
git-p4: test cloning with two dirs, clarify doc

Document how git-p4 currently works when specifying multiple
depot paths:

1.  No branches or directories are named.

2.  Conflicting files are silently ignored---the last change
    wins.

2.  Option --destination is required, else the last path is construed
    to be a directory.

3.  Revision specifiers must be the same on all paths for them to
    take effect.

Test this behavior.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: clone does not use --git-dir
Pete Wyckoff [Sun, 25 Dec 2011 02:07:32 +0000 (21:07 -0500)]
git-p4: clone does not use --git-dir

Complain if --git-dir is given during a clone.  It has no
effect.  Only --destination and --bare can change where the newly
cloned git dir will be.

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agogit-p4: introduce asciidoc documentation
Pete Wyckoff [Sun, 25 Dec 2011 02:07:31 +0000 (21:07 -0500)]
git-p4: introduce asciidoc documentation

Add proper documentation for git-p4.  Delete the old .txt
documentation from contrib/fast-import.

Cc: Frans Klaver <fransklaver@gmail.com>
Cc: Luke Diamand <luke@diamand.org>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agorename git-p4 tests
Pete Wyckoff [Sun, 25 Dec 2011 02:07:30 +0000 (21:07 -0500)]
rename git-p4 tests

Use consistent naming for all tests: "t98<num>-git-p4-<topic>.sh"

Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoUpdate draft release notes in preparation for 1.7.9-rc0
Junio C Hamano [Thu, 22 Dec 2011 23:36:48 +0000 (15:36 -0800)]
Update draft release notes in preparation for 1.7.9-rc0

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'tr/bash-read-unescaped'
Junio C Hamano [Thu, 22 Dec 2011 23:30:38 +0000 (15:30 -0800)]
Merge branch 'tr/bash-read-unescaped'

* tr/bash-read-unescaped:
  bash completion: use read -r everywhere

12 years agoMerge branch 'ab/sun-studio-portability'
Junio C Hamano [Thu, 22 Dec 2011 23:30:33 +0000 (15:30 -0800)]
Merge branch 'ab/sun-studio-portability'

* ab/sun-studio-portability:
  Appease Sun Studio by renaming "tmpfile"
  Fix a bitwise negation assignment issue spotted by Sun Studio
  Fix an enum assignment issue spotted by Sun Studio

12 years agoMerge branch 'tr/doc-sh-setup'
Junio C Hamano [Thu, 22 Dec 2011 23:30:29 +0000 (15:30 -0800)]
Merge branch 'tr/doc-sh-setup'

* tr/doc-sh-setup:
  git-sh-setup: make require_clean_work_tree part of the interface

12 years agoMerge branch 'rr/revert-cherry-pick'
Junio C Hamano [Thu, 22 Dec 2011 23:30:22 +0000 (15:30 -0800)]
Merge branch 'rr/revert-cherry-pick'

* rr/revert-cherry-pick:
  t3502, t3510: clarify cherry-pick -m failure
  t3510 (cherry-pick-sequencer): use exit status
  revert: simplify getting commit subject in format_todo()
  revert: tolerate extra spaces, tabs in insn sheet
  revert: make commit subjects in insn sheet optional
  revert: free msg in format_todo()

12 years agoMerge branch 'tr/pty-all'
Junio C Hamano [Thu, 22 Dec 2011 23:30:15 +0000 (15:30 -0800)]
Merge branch 'tr/pty-all'

* tr/pty-all:
  test-terminal: set output terminals to raw mode

12 years agoMerge branch 'jn/maint-gitweb-utf8-fix'
Junio C Hamano [Thu, 22 Dec 2011 23:30:12 +0000 (15:30 -0800)]
Merge branch 'jn/maint-gitweb-utf8-fix'

* jn/maint-gitweb-utf8-fix:
  gitweb: Fix fallback mode of to_utf8 subroutine
  gitweb: Output valid utf8 in git_blame_common('data')
  gitweb: esc_html() site name for title in OPML
  gitweb: Call to_utf8() on input string in chop_and_escape_str()

12 years agoUpdate draft release notes to 1.7.9
Junio C Hamano [Thu, 22 Dec 2011 19:43:02 +0000 (11:43 -0800)]
Update draft release notes to 1.7.9

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'jk/maint-strbuf-missing-init'
Junio C Hamano [Thu, 22 Dec 2011 19:27:31 +0000 (11:27 -0800)]
Merge branch 'jk/maint-strbuf-missing-init'

* jk/maint-strbuf-missing-init:
  commit, merge: initialize static strbuf

Conflicts:
builtin/merge.c

12 years agoMerge branch 'jc/maint-lf-to-crlf-keep-crlf'
Junio C Hamano [Thu, 22 Dec 2011 19:27:29 +0000 (11:27 -0800)]
Merge branch 'jc/maint-lf-to-crlf-keep-crlf'

* jc/maint-lf-to-crlf-keep-crlf:
  lf_to_crlf_filter(): resurrect CRLF->CRLF hack

12 years agoMerge branch 'rs/diff-tree-combined-clean-up'
Junio C Hamano [Thu, 22 Dec 2011 19:27:29 +0000 (11:27 -0800)]
Merge branch 'rs/diff-tree-combined-clean-up'

* rs/diff-tree-combined-clean-up:
  submodule: use diff_tree_combined_merge() instead of diff_tree_combined()
  pass struct commit to diff_tree_combined_merge()
  use struct sha1_array in diff_tree_combined()

12 years agoMerge branch 'jk/maint-push-v-is-verbose'
Junio C Hamano [Thu, 22 Dec 2011 19:27:29 +0000 (11:27 -0800)]
Merge branch 'jk/maint-push-v-is-verbose'

* jk/maint-push-v-is-verbose:
  make "git push -v" actually verbose

12 years agoMerge branch 'tr/grep-threading'
Junio C Hamano [Thu, 22 Dec 2011 19:27:28 +0000 (11:27 -0800)]
Merge branch 'tr/grep-threading'

* tr/grep-threading:
  grep: disable threading in non-worktree case
  grep: enable threading with -p and -W using lazy attribute lookup
  grep: load funcname patterns for -W

12 years agoMerge branch 'jk/pretty-reglog-ent'
Junio C Hamano [Thu, 22 Dec 2011 19:27:28 +0000 (11:27 -0800)]
Merge branch 'jk/pretty-reglog-ent'

* jk/pretty-reglog-ent:
  pretty: give placeholders to reflog identity

12 years agoMerge branch 'jk/follow-rename-score'
Junio C Hamano [Thu, 22 Dec 2011 19:27:27 +0000 (11:27 -0800)]
Merge branch 'jk/follow-rename-score'

* jk/follow-rename-score:
  use custom rename score during --follow

12 years agoMerge branch 'jk/doc-fsck'
Junio C Hamano [Thu, 22 Dec 2011 19:27:27 +0000 (11:27 -0800)]
Merge branch 'jk/doc-fsck'

* jk/doc-fsck:
  docs: brush up obsolete bits of git-fsck manpage

Conflicts:
Documentation/git-fsck.txt

12 years agoMerge branch 'nd/war-on-nul-in-commit'
Junio C Hamano [Thu, 22 Dec 2011 19:27:26 +0000 (11:27 -0800)]
Merge branch 'nd/war-on-nul-in-commit'

* nd/war-on-nul-in-commit:
  commit_tree(): refuse commit messages that contain NULs
  Convert commit_tree() to take strbuf as message
  merge: abort if fails to commit

Conflicts:
builtin/commit.c
commit.c
commit.h

12 years agoMerge branch 'jk/maint-do-not-feed-stdin-to-tests'
Junio C Hamano [Thu, 22 Dec 2011 19:27:25 +0000 (11:27 -0800)]
Merge branch 'jk/maint-do-not-feed-stdin-to-tests'

* jk/maint-do-not-feed-stdin-to-tests:
  test-lib: redirect stdin of tests

12 years agoMerge branch 'jn/test-cleanup-7006'
Junio C Hamano [Thu, 22 Dec 2011 19:27:24 +0000 (11:27 -0800)]
Merge branch 'jn/test-cleanup-7006'

* jn/test-cleanup-7006:
  test: errors preparing for a test are not special

12 years agoMerge branch 'ef/setenv-putenv'
Junio C Hamano [Thu, 22 Dec 2011 19:27:24 +0000 (11:27 -0800)]
Merge branch 'ef/setenv-putenv'

* ef/setenv-putenv:
  compat/setenv.c: error if name contains '='
  compat/setenv.c: update errno when erroring out

12 years agoMerge branch 'jk/git-prompt'
Junio C Hamano [Thu, 22 Dec 2011 19:27:23 +0000 (11:27 -0800)]
Merge branch 'jk/git-prompt'

* jk/git-prompt:
  contrib: add credential helper for OS X Keychain
  Makefile: OS X has /dev/tty
  Makefile: linux has /dev/tty
  credential: use git_prompt instead of git_getpass
  prompt: use git_terminal_prompt
  add generic terminal prompt function
  refactor git_getpass into generic prompt function
  move git_getpass to its own source file
  imap-send: don't check return value of git_getpass
  imap-send: avoid buffer overflow

Conflicts:
Makefile

12 years agoMerge branch 'jk/http-push-to-empty'
Junio C Hamano [Thu, 22 Dec 2011 19:27:22 +0000 (11:27 -0800)]
Merge branch 'jk/http-push-to-empty'

* jk/http-push-to-empty:
  remote-curl: don't pass back fake refs

Conflicts:
remote-curl.c

12 years agoSync with v1.7.8.1
Junio C Hamano [Wed, 21 Dec 2011 20:02:39 +0000 (12:02 -0800)]
Sync with v1.7.8.1

12 years agoGit 1.7.8.1 v1.7.8.1
Junio C Hamano [Wed, 21 Dec 2011 20:02:13 +0000 (12:02 -0800)]
Git 1.7.8.1

Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'jl/submodule-status-failure-report' into maint
Junio C Hamano [Wed, 21 Dec 2011 19:42:45 +0000 (11:42 -0800)]
Merge branch 'jl/submodule-status-failure-report' into maint

* jl/submodule-status-failure-report:
  diff/status: print submodule path when looking for changes fails

12 years agoMerge branch 'tr/userdiff-c-returns-pointer' into maint
Junio C Hamano [Wed, 21 Dec 2011 19:42:45 +0000 (11:42 -0800)]
Merge branch 'tr/userdiff-c-returns-pointer' into maint

* tr/userdiff-c-returns-pointer:
  userdiff: allow * between cpp funcname words

12 years agoMerge branch 'bc/maint-apply-check-no-patch' into maint
Junio C Hamano [Wed, 21 Dec 2011 19:42:45 +0000 (11:42 -0800)]
Merge branch 'bc/maint-apply-check-no-patch' into maint

* bc/maint-apply-check-no-patch:
  builtin/apply.c: report error on failure to recognize input
  t/t4131-apply-fake-ancestor.sh: fix broken test

12 years agoMerge branch 'cn/maint-lf-to-crlf-filter' into maint
Junio C Hamano [Wed, 21 Dec 2011 19:42:44 +0000 (11:42 -0800)]
Merge branch 'cn/maint-lf-to-crlf-filter' into maint

* cn/maint-lf-to-crlf-filter:
  lf_to_crlf_filter(): tell the caller we added "\n" when draining
  convert: track state in LF-to-CRLF filter

12 years agoMerge branch 'jk/maint-upload-archive' into maint
Junio C Hamano [Wed, 21 Dec 2011 19:42:44 +0000 (11:42 -0800)]
Merge branch 'jk/maint-upload-archive' into maint

* jk/maint-upload-archive:
  archive: don't let remote clients get unreachable commits

12 years agobash completion: use read -r everywhere
Thomas Rast [Wed, 21 Dec 2011 15:54:14 +0000 (16:54 +0100)]
bash completion: use read -r everywhere

We use the 'read' command without -r, so that it treats '\' as an
escape character, in several places.  This breaks the loop reading
refnames from git-for-each-ref in __git_refs() if there are refnames
such as "foo'bar", in which case for-each-ref helpfully quotes them as

  $ git update-ref "refs/remotes/test/foo'bar" HEAD
  $ git for-each-ref --shell --format="ref=%(refname:short)" "refs/remotes"
  ref='test/foo'\''bar'

Interpolating the \' here will read "ref='test/foo'''bar'" instead, and
eval then chokes on the unbalanced quotes.

However, since none of the read loops _want_ to have backslashes
interpolated, it's much safer to use read -r everywhere.

Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoclone: the -o option has nothing to do with <branch>
Carlos Martín Nieto [Wed, 21 Dec 2011 18:14:09 +0000 (18:14 +0000)]
clone: the -o option has nothing to do with <branch>

It is to give an alternate <name> instead of "origin" to the remote
we are cloning from.

Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agobuiltin/log: remove redundant initialization
Michael Schubert [Wed, 21 Dec 2011 12:05:27 +0000 (13:05 +0100)]
builtin/log: remove redundant initialization

"abbrev" and "commit_format" in struct rev_info get initialized in
init_revisions - no need to reinit in cmd_log_init_defaults.

Signed-off-by: Michael Schubert <mschub@elegosoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
12 years agoMerge branch 'ms/commit-cc-option-helpstring' into maint
Junio C Hamano [Wed, 21 Dec 2011 18:50:20 +0000 (10:50 -0800)]
Merge branch 'ms/commit-cc-option-helpstring' into maint

* ms/commit-cc-option-helpstring:
  builtin/commit: add missing '/' in help message

12 years agobuiltin/commit: add missing '/' in help message
Michael Schubert [Wed, 21 Dec 2011 14:56:00 +0000 (15:56 +0100)]
builtin/commit: add missing '/' in help message

Signed-off-by: Michael Schubert <mschub@elegosoft.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>