summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-12-22Merge branch 'nd/war-on-nul-in-commit'Libravatar Junio C Hamano10-17/+33
* 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
2011-12-22Merge branch 'jk/maint-do-not-feed-stdin-to-tests'Libravatar Junio C Hamano1-1/+2
* jk/maint-do-not-feed-stdin-to-tests: test-lib: redirect stdin of tests
2011-12-22Merge branch 'jn/test-cleanup-7006'Libravatar Junio C Hamano1-56/+17
* jn/test-cleanup-7006: test: errors preparing for a test are not special
2011-12-22Merge branch 'ef/setenv-putenv'Libravatar Junio C Hamano1-2/+8
* ef/setenv-putenv: compat/setenv.c: error if name contains '=' compat/setenv.c: update errno when erroring out
2011-12-22Merge branch 'jk/git-prompt'Libravatar Junio C Hamano12-60/+374
* 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
2011-12-22Merge branch 'jk/http-push-to-empty'Libravatar Junio C Hamano2-3/+36
* jk/http-push-to-empty: remote-curl: don't pass back fake refs Conflicts: remote-curl.c
2011-12-21Sync with v1.7.8.1Libravatar Junio C Hamano5-14/+35
2011-12-21Git 1.7.8.1Libravatar Junio C Hamano1-4/+25
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-21Merge branch 'jl/submodule-status-failure-report' into maintLibravatar Junio C Hamano1-2/+2
* jl/submodule-status-failure-report: diff/status: print submodule path when looking for changes fails
2011-12-21Merge branch 'tr/userdiff-c-returns-pointer' into maintLibravatar Junio C Hamano1-1/+1
* tr/userdiff-c-returns-pointer: userdiff: allow * between cpp funcname words
2011-12-21Merge branch 'bc/maint-apply-check-no-patch' into maintLibravatar Junio C Hamano3-6/+25
* 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
2011-12-21Merge branch 'cn/maint-lf-to-crlf-filter' into maintLibravatar Junio C Hamano1-14/+40
* 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
2011-12-21Merge branch 'jk/maint-upload-archive' into maintLibravatar Junio C Hamano2-4/+22
* jk/maint-upload-archive: archive: don't let remote clients get unreachable commits
2011-12-21clone: the -o option has nothing to do with <branch>Libravatar Carlos Martín Nieto1-2/+2
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>
2011-12-21builtin/log: remove redundant initializationLibravatar Michael Schubert1-2/+0
"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>
2011-12-21Merge branch 'ms/commit-cc-option-helpstring' into maintLibravatar Junio C Hamano1-1/+1
* ms/commit-cc-option-helpstring: builtin/commit: add missing '/' in help message
2011-12-21builtin/commit: add missing '/' in help messageLibravatar Michael Schubert1-1/+1
Signed-off-by: Michael Schubert <mschub@elegosoft.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-20Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: builtin/init-db.c: eliminate -Wformat warning on Solaris
2011-12-20builtin/init-db.c: eliminate -Wformat warning on SolarisLibravatar Ævar Arnfjörð Bjarmason1-1/+1
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>
2011-12-20Merge branch 'mh/ref-api'Libravatar Junio C Hamano3-258/+284
* 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
2011-12-20Merge branch 'jc/advice-doc'Libravatar Junio C Hamano1-11/+8
* jc/advice-doc: advice: Document that they all default to true
2011-12-20Merge branch 'jc/request-pull-show-head-4'Libravatar Junio C Hamano2-9/+38
* jc/request-pull-show-head-4: request-pull: do not emit "tag" before the tagname request-pull: update the "pull" command generation logic
2011-12-20Merge branch 'jc/pull-signed-tag'Libravatar Junio C Hamano1-1/+5
* jc/pull-signed-tag: commit: do not lose mergetag header when not amending
2011-12-20Merge branch 'jc/checkout-m-twoway'Libravatar Junio C Hamano1-1/+3
* jc/checkout-m-twoway: t/t2023-checkout-m.sh: fix use of test_must_fail
2011-12-20t/t2023-checkout-m.sh: fix use of test_must_failLibravatar Ævar Arnfjörð Bjarmason1-1/+3
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>
2011-12-20commit: do not lose mergetag header when not amendingLibravatar Junio C Hamano1-1/+5
The earlier ed7a42a (commit: teach --amend to carry forward extra headers, 2011-11-08) broke "git merge/pull; edit to fix conflict; git commit" workflow by forgetting that commit_tree_extended() takes the whole extra header list. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-20Merge branch 'tr/cache-tree'Libravatar Junio C Hamano1-4/+2
* tr/cache-tree: t0090: be prepared that 'wc -l' writes leading blanks
2011-12-20t0090: be prepared that 'wc -l' writes leading blanksLibravatar Johannes Sixt1-4/+2
Use 'printf %d $(whatever|wc -l)' so that the shell removes the blanks for us. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Acked-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-19Update draft release notes to 1.7.9Libravatar Junio C Hamano1-1/+48
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-19Merge branch 'ab/enable-i18n'Libravatar Junio C Hamano37-39/+1291
* ab/enable-i18n: i18n: add infrastructure for translating Git with gettext Conflicts: Makefile
2011-12-19Merge branch 'ew/keepalive'Libravatar Junio C Hamano1-0/+13
* ew/keepalive: enable SO_KEEPALIVE for connected TCP sockets
2011-12-19Merge branch 'jc/checkout-m-twoway'Libravatar Junio C Hamano2-24/+83
* jc/checkout-m-twoway: checkout_merged(): squelch false warning from some gcc Test 'checkout -m -- path' checkout -m: no need to insist on having all 3 stages
2011-12-19Merge branch 'jk/maint-push-over-dav'Libravatar Junio C Hamano7-5/+49
* jk/maint-push-over-dav: http-push: enable "proactive auth" t5540: test DAV push with authentication Conflicts: http.c
2011-12-19Merge branch 'jk/fetch-no-tail-match-refs'Libravatar Junio C Hamano8-41/+48
* 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
2011-12-19Merge branch 'nd/resolve-ref'Libravatar Junio C Hamano21-76/+73
* nd/resolve-ref: Rename resolve_ref() to resolve_ref_unsafe() Convert resolve_ref+xstrdup to new resolve_refdup function revert: convert resolve_ref() to read_ref_full()
2011-12-19Merge branch 'jn/maint-sequencer-fixes'Libravatar Junio C Hamano6-126/+252
* 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
2011-12-19Merge branch 'jk/maint-snprintf-va-copy'Libravatar Junio C Hamano1-2/+7
* jk/maint-snprintf-va-copy: compat/snprintf: don't look at va_list twice
2011-12-19Merge branch 'jk/maint-mv'Libravatar Junio C Hamano2-4/+10
* 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"
2011-12-19Merge branch 'ci/stripspace-docs'Libravatar Junio C Hamano2-7/+64
* ci/stripspace-docs: Update documentation for stripspace
2011-12-19Merge branch 'rr/test-chaining'Libravatar Junio C Hamano15-199/+123
* rr/test-chaining: t3401: use test_commit in setup t3401: modernize style t3040 (subprojects-basic): fix '&&' chaining, modernize style t1510 (worktree): fix '&&' chaining t3030 (merge-recursive): use test_expect_code test: fix '&&' chaining t3200 (branch): fix '&&' chaining
2011-12-19Merge branch 'tr/cache-tree'Libravatar Junio C Hamano10-11/+144
* tr/cache-tree: reset: update cache-tree data when appropriate commit: write cache-tree data when writing index anyway Refactor cache_tree_update idiom from commit Test the current state of the cache-tree optimization Add test-scrap-cache-tree
2011-12-19Merge branch 'jk/credentials'Libravatar Junio C Hamano28-100/+2427
* jk/credentials: t: add test harness for external credential helpers credentials: add "store" helper strbuf: add strbuf_add*_urlencode Makefile: unix sockets may not available on some platforms credentials: add "cache" helper docs: end-user documentation for the credential subsystem credential: make relevance of http path configurable credential: add credential.*.username credential: apply helper config http: use credential API to get passwords credential: add function for parsing url components introduce credentials API t5550: fix typo test-lib: add test_config_global variant Conflicts: strbuf.c
2011-12-19request-pull: do not emit "tag" before the tagnameLibravatar Junio C Hamano2-4/+2
The whole point of the recent update to allow "git pull $url $tagname" is so that the integrator does not have to store the (signed) tag that is used to convey authenticity to be recorded in the resulting merge in the local repository's tag namespace. Asking for a merge be made with "git pull $url tag $tagname" defeats it. Note that the request can become ambiguous if the requestor has a branch with the same name as the tag, but that is not a new problem limited to pulling. I wouldn't mind if somebody wants to add disambiguation to the find_matching_ref logic in the script as a separate patch, though. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-19remote-curl: don't pass back fake refsLibravatar Jeff King2-3/+36
When receive-pack advertises its list of refs, it generally hides the capabilities information after a NUL at the end of the first ref. However, when we have an empty repository, there are no refs, and therefore receive-pack writes a fake ref "capabilities^{}" with the capabilities afterwards. On the client side, git reads the result with get_remote_heads(). We pick the capabilities from the end of the line, and then call check_ref() to make sure the ref name is valid. We see that it isn't, and don't bother adding it to our list of refs. However, the call to check_ref() is enabled by passing the REF_NORMAL flag to get_remote_heads. For the regular git transport, we pass REF_NORMAL in get_refs_via_connect() if we are doing a push (since only receive-pack uses this fake ref). But in remote-curl, we never use this flag, and we accept the fake ref as a real one, passing it back from the helper to the parent git-push. Most of the time this bug goes unnoticed, as the fake ref won't match our refspecs. However, if "--mirror" is used, then we see it as remote cruft to be pruned, and try to pass along a deletion refspec for it. Of course this refspec has bogus syntax (because of the ^{}), and the helper complains, aborting the push. Let's have remote-curl mirror what the builtin get_refs_via_connect() does (at least for the case of using git protocol; we can leave the dumb info/refs reader as it is). This also fixes pushing with --mirror to a smart-http remote that uses alternates. The fake ".have" refs the server gives to avoid unnecessary network transfer has a similar bad interactions with the machinery. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-18advice: Document that they all default to trueLibravatar Junio C Hamano1-11/+8
By definition, the default value of "advice.*" variables must be true and they all control various additional help messages that are designed to aid new users. Setting one to false is to tell Git that the user understands the nature of the error and does not need the additional verbose help message. Also fix the asciidoc markup for linkgit:git-checkout[1] in the description of the detachedHead advice by removing an excess colon. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-17git-p4: fix skipSubmitEdit regressionLibravatar Pete Wyckoff2-8/+34
Commit 7c766e5 (git-p4: introduce skipSubmitEdit, 2011-12-04) made it easier to automate submission to p4, but broke the most common case. Add a test for when the user really does edit and save the change template, and fix the bug that causes the test to fail. Also add a confirmation message when submission is cancelled. Reported-by: Michael Horowitz <michael.horowitz@ieee.org> Signed-off-by: Pete Wyckoff <pw@padd.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-16Update draft release notes to 1.7.9Libravatar Junio C Hamano1-1/+18
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-12-16Merge branch 'jc/commit-amend-no-edit'Libravatar Junio C Hamano2-156/+172
* jc/commit-amend-no-edit: test: commit --amend should honor --no-edit commit: honour --no-edit t7501 (commit): modernize style test: remove a porcelain test that hard-codes commit names test: add missing "&&" after echo command
2011-12-16Merge branch 'jc/stream-to-pack'Libravatar Junio C Hamano16-134/+516
* jc/stream-to-pack: bulk-checkin: replace fast-import based implementation csum-file: introduce sha1file_checkpoint finish_tmp_packfile(): a helper function create_tmp_packfile(): a helper function write_pack_header(): a helper function Conflicts: pack.h
2011-12-16Merge branch 'aw/rebase-i-stop-on-failure-to-amend'Libravatar Junio C Hamano1-13/+23
* aw/rebase-i-stop-on-failure-to-amend: rebase -i: interrupt rebase when "commit --amend" failed during "reword"