Pete Wyckoff [Wed, 11 Jan 2012 23:31:06 +0000 (18:31 -0500)]
git-p4: only a single ... wildcard is supported
Catch the case where a ... exists at the end, and also elsehwere.
Reported-by: Gary Gibbons <ggibbons@perforce.com>
Signed-off-by: Pete Wyckoff <pw@padd.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
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>
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>
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>
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>
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>
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>
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
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
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
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
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>
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>
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>
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>
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>
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>
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>
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.
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
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
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
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
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
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
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
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
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
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
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
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
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
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"
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
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
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
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
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"
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
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"
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.
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
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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
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
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
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()
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
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()
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>
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
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
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()
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
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
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
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
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
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
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
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
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
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
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
Junio C Hamano [Wed, 21 Dec 2011 20:02:39 +0000 (12:02 -0800)]
Sync with 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>
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
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
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
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
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
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>
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>
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>
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
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>
Ævar Arnfjörð Bjarmason [Wed, 21 Dec 2011 01:18:21 +0000 (01:18 +0000)]
Appease Sun Studio by renaming "tmpfile"
On Solaris the system headers define the "tmpfile" name, which'll
cause Git compiled with Sun Studio 12 Update 1 to whine about us
redefining the name:
"pack-write.c", line 76: warning: name redefined by pragma redefine_extname declared static: tmpfile (E_PRAGMA_REDEFINE_STATIC)
"sha1_file.c", line 2455: warning: name redefined by pragma redefine_extname declared static: tmpfile (E_PRAGMA_REDEFINE_STATIC)
"fast-import.c", line 858: warning: name redefined by pragma redefine_extname declared static: tmpfile (E_PRAGMA_REDEFINE_STATIC)
"builtin/index-pack.c", line 175: warning: name redefined by pragma redefine_extname declared static: tmpfile (E_PRAGMA_REDEFINE_STATIC)
Just renaming the "tmpfile" variable to "tmp_file" in the relevant
places is the easiest way to fix this.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ævar Arnfjörð Bjarmason [Wed, 21 Dec 2011 01:18:20 +0000 (01:18 +0000)]
Fix a bitwise negation assignment issue spotted by Sun Studio
Change direct and indirect assignments of the bitwise negation of 0 to
uint32_t variables to have a "U" suffix. I.e. ~0U instead of ~0. This
eliminates warnings under Sun Studio 12 Update 1:
"vcs-svn/string_pool.c", line 11: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND)
"vcs-svn/string_pool.c", line 81: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND)
"vcs-svn/repo_tree.c", line 112: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND)
"vcs-svn/repo_tree.c", line 112: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND)
"test-treap.c", line 34: warning: initializer will be sign-extended: -1 (E_INIT_SIGN_EXTEND)
The semantics are still the same as demonstrated by this program:
$ cat test.c && make test && ./test
#include <stdio.h>
#include <stdint.h>
int main(void)
{
uint32_t foo = ~0;
uint32_t bar = ~0U;
printf("foo = <%u> bar = <%u>\n", foo, bar);
return 0;
}
cc test.c -o test
"test.c", line 5: warning: initializer will be sign-extended: -1
foo = <
4294967295> bar = <
4294967295>
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Ævar Arnfjörð Bjarmason [Wed, 21 Dec 2011 01:18:19 +0000 (01:18 +0000)]
Fix an enum assignment issue spotted by Sun Studio
In builtin/fast-export.c we'd assign to variables of the
tag_of_filtered_mode enum type with constants defined for the
signed_tag_mode enum.
We'd get the intended value since both the value we were assigning
with and the one we actually wanted had the same positional within
their respective enums, but doing it this way makes no sense.
This issue was spotted by Sun Studio 12 Update 1:
"builtin/fast-export.c", line 54: warning: enum type mismatch: op "=" (E_ENUM_TYPE_MISMATCH_OP)
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Wed, 21 Dec 2011 00:34:20 +0000 (16:34 -0800)]
Merge branch 'maint'
* maint:
builtin/init-db.c: eliminate -Wformat warning on Solaris
Ævar Arnfjörð Bjarmason [Tue, 20 Dec 2011 23:27:41 +0000 (23:27 +0000)]
builtin/init-db.c: eliminate -Wformat warning on Solaris
On Solaris systems we'd warn about an implicit cast of mode_t when we
printed things out with the %d format. We'd get this warning under GCC
4.6.0 with Solaris headers:
builtin/init-db.c: In function ‘separate_git_dir’:
builtin/init-db.c:354:4: warning: format ‘%d’ expects argument of type ‘int’, but argument 2 has type ‘mode_t’ [-Wformat]
We've been doing this ever since
v1.7.4.1-296-gb57fb80. Just work
around this by adding an explicit cast.
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Thomas Rast [Tue, 20 Dec 2011 21:42:39 +0000 (22:42 +0100)]
git-sh-setup: make require_clean_work_tree part of the interface
92c62a3 (Porcelain scripts: Rewrite cryptic "needs update" error
message, 2010-10-19) refactored git's own checking to a function in
git-sh-setup. This is a very useful thing for script writers, so
document it.
Signed-off-by: Thomas Rast <trast@student.ethz.ch>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Junio C Hamano [Tue, 20 Dec 2011 21:25:53 +0000 (13:25 -0800)]
Merge branch 'mh/ref-api'
* mh/ref-api:
add_ref(): take a (struct ref_entry *) parameter
create_ref_entry(): extract function from add_ref()
repack_without_ref(): remove temporary
resolve_gitlink_ref_recursive(): change to work with struct ref_cache
Pass a (ref_cache *) to the resolve_gitlink_*() helper functions
resolve_gitlink_ref(): improve docstring
get_ref_dir(): change signature
refs: change signatures of get_packed_refs() and get_loose_refs()
is_dup_ref(): extract function from sort_ref_array()
add_ref(): add docstring
parse_ref_line(): add docstring
is_refname_available(): remove the "quiet" argument
clear_ref_array(): rename from free_ref_array()
refs: rename parameters result -> sha1
refs: rename "refname" variables
struct ref_entry: document name member
Conflicts:
cache.h
refs.c
Junio C Hamano [Tue, 20 Dec 2011 21:25:29 +0000 (13:25 -0800)]
Merge branch 'jc/advice-doc'
* jc/advice-doc:
advice: Document that they all default to true
Junio C Hamano [Tue, 20 Dec 2011 21:25:27 +0000 (13:25 -0800)]
Merge branch 'jc/request-pull-show-head-4'
* jc/request-pull-show-head-4:
request-pull: do not emit "tag" before the tagname
request-pull: update the "pull" command generation logic
Junio C Hamano [Tue, 20 Dec 2011 21:24:12 +0000 (13:24 -0800)]
Merge branch 'jc/pull-signed-tag'
* jc/pull-signed-tag:
commit: do not lose mergetag header when not amending
Junio C Hamano [Tue, 20 Dec 2011 21:24:08 +0000 (13:24 -0800)]
Merge branch 'jc/checkout-m-twoway'
* jc/checkout-m-twoway:
t/t2023-checkout-m.sh: fix use of test_must_fail
Ævar Arnfjörð Bjarmason [Tue, 20 Dec 2011 20:37:45 +0000 (20:37 +0000)]
t/t2023-checkout-m.sh: fix use of test_must_fail
Change an invocation of test_must_fail() to be inside a
test_expect_success() as is our usual pattern. Having it outside
caused our tests to fail under prove(1) since we wouldn't print a
newline before TAP output:
CONFLICT (content): Merge conflict in both.txt
# GETTEXT POISON #ok 2 - -m restores 2-way conflicted+resolved file
Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>