4c24385 | Junio C Hamano | 20 March 2015, 20:11:51 UTC | Merge branch 'mg/verify-commit' Workarounds for certain build of GPG that triggered false breakage in a test. * mg/verify-commit: t7510: do not fail when gpg warns about insecure memory | 20 March 2015, 20:11:51 UTC |
0a81977 | Junio C Hamano | 20 March 2015, 20:11:50 UTC | Merge branch 'km/imap-send-libcurl-options' "git imap-send" learned to optionally talk with an IMAP server via libcURL; because there is no other option when Git is built with NO_OPENSSL option, use that codepath by default under such configuration. * km/imap-send-libcurl-options: imap-send: use cURL automatically when NO_OPENSSL defined | 20 March 2015, 20:11:50 UTC |
551fc7a | Junio C Hamano | 20 March 2015, 20:11:49 UTC | Merge branch 'km/bsd-sysctl' We now detect number of CPUs on older BSD-derived systems. * km/bsd-sysctl: thread-utils.c: detect CPU count on older BSD-like systems configure: support HAVE_BSD_SYSCTL option | 20 March 2015, 20:11:49 UTC |
ec0465a | Junio C Hamano | 20 March 2015, 20:11:48 UTC | Merge branch 'km/bsd-shells' Portability fixes and workarounds for shell scripts have been added to help BSD-derived systems. * km/bsd-shells: t5528: do not fail with FreeBSD shell help.c: use SHELL_PATH instead of hard-coded "/bin/sh" git-compat-util.h: move SHELL_PATH default into header git-instaweb: use @SHELL_PATH@ instead of /bin/sh git-instaweb: allow running in a working tree subdirectory | 20 March 2015, 20:11:48 UTC |
89ebf97 | Junio C Hamano | 20 March 2015, 20:11:47 UTC | Merge branch 'rs/daemon-hostname-in-strbuf' Code in "git daemon" to parse out and hold hostnames used in request interpolation has been simplified. * rs/daemon-hostname-in-strbuf: daemon: deglobalize hostname information daemon: use strbuf for hostname info | 20 March 2015, 20:11:47 UTC |
38f6ae9 | Junio C Hamano | 20 March 2015, 20:11:46 UTC | Merge branch 'mg/detached-head-report' "git branch" on a detached HEAD always said "(detached from xyz)", even when "git status" would report "detached at xyz". The HEAD is actually at xyz and haven't been moved since it was detached in such a case, but the user cannot read what the current value of HEAD is when "detached from" is used. * mg/detached-head-report: branch: name detached HEAD analogous to status wt-status: refactor detached HEAD analysis | 20 March 2015, 20:11:46 UTC |
d6c988d | Junio C Hamano | 20 March 2015, 20:11:46 UTC | Merge branch 'kn/git-cd-to-empty' "git -C '' subcmd" refused to work in the current directory, unlike "cd ''" which silently behaves as a no-op. * kn/git-cd-to-empty: git: treat "git -C '<path>'" as a no-op when <path> is empty | 20 March 2015, 20:11:46 UTC |
f57610a | Junio C Hamano | 20 March 2015, 20:11:45 UTC | Merge branch 'nd/versioncmp-prereleases' The versionsort.prerelease configuration variable can be used to specify that v1.0-pre1 comes before v1.0. * nd/versioncmp-prereleases: config.txt: update versioncmp.prereleaseSuffix versionsort: support reorder prerelease suffixes | 20 March 2015, 20:11:45 UTC |
9ab698f | Junio C Hamano | 17 March 2015, 23:05:12 UTC | Post 2.3 cyce (batch #10) Also declare that the next one will be called v2.4 ;-) Signed-off-by: Junio C Hamano <gitster@pobox.com> | 17 March 2015, 23:05:12 UTC |
2a39bdb | Junio C Hamano | 17 March 2015, 23:01:34 UTC | Merge branch 'mg/doc-status-color-slot' Documentation fixes. * mg/doc-status-color-slot: config,completion: add color.status.unmerged | 17 March 2015, 23:01:34 UTC |
9bb56e4 | Junio C Hamano | 17 March 2015, 23:01:33 UTC | Merge branch 'mg/status-v-v' "git status" now allows the "-v" to be given twice to show the differences that are left in the working tree not to be committed. * mg/status-v-v: commit/status: show the index-worktree diff with -v -v t7508: test git status -v t7508: .gitignore 'expect' and 'output' files | 17 March 2015, 23:01:33 UTC |
795b014 | Junio C Hamano | 17 March 2015, 23:01:31 UTC | Merge branch 'mg/sequencer-commit-messages-always-verbatim' "git cherry-pick" used to clean-up the log message even when it is merely replaying an existing commit. It now replays the message verbatim unless you are editing the message of resulting commits. * mg/sequencer-commit-messages-always-verbatim: sequencer: preserve commit messages | 17 March 2015, 23:01:32 UTC |
e5b8ce2 | Junio C Hamano | 17 March 2015, 23:01:30 UTC | Merge branch 'sg/completion-remote' Code simplification. * sg/completion-remote: completion: simplify __git_remotes() completion: add a test for __git_remotes() helper function | 17 March 2015, 23:01:30 UTC |
fbcbcee | Junio C Hamano | 17 March 2015, 23:01:29 UTC | Merge branch 'es/rebase-i-count-todo' "git rebase -i" recently started to include the number of commits in the insn sheet to be processed, but on a platform that prepends leading whitespaces to "wc -l" output, the numbers are shown with extra whitespaces that aren't necessary. * es/rebase-i-count-todo: rebase-interactive: re-word "item count" comment rebase-interactive: suppress whitespace preceding item count | 17 March 2015, 23:01:29 UTC |
860b05b | Junio C Hamano | 17 March 2015, 23:01:28 UTC | Merge branch 'ak/git-done-help-cleanup' Code simplification. * ak/git-done-help-cleanup: git: make was_alias and done_help non-static | 17 March 2015, 23:01:28 UTC |
f0b7ab3 | Junio C Hamano | 17 March 2015, 23:01:27 UTC | Merge branch 'rs/zip-text' "git archive" can now be told to set the 'text' attribute in the resulting zip archive. * rs/zip-text: archive-zip: mark text files in archives | 17 March 2015, 23:01:27 UTC |
6902c4d | Junio C Hamano | 17 March 2015, 23:01:26 UTC | Merge branch 'rs/deflate-init-cleanup' Code simplification. * rs/deflate-init-cleanup: zlib: initialize git_zstream in git_deflate_init{,_gzip,_raw} | 17 March 2015, 23:01:26 UTC |
52cae64 | Junio C Hamano | 14 March 2015, 06:11:50 UTC | Sync with 2.3.3 | 14 March 2015, 06:11:50 UTC |
bb85775 | Junio C Hamano | 14 March 2015, 05:57:25 UTC | Git 2.3.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 14 March 2015, 05:57:25 UTC |
4b23b5d | Junio C Hamano | 14 March 2015, 05:56:12 UTC | Merge branch 'mr/doc-clean-f-f' into maint Documentation update. * mr/doc-clean-f-f: Documentation/git-clean.txt: document that -f may need to be given twice | 14 March 2015, 05:56:12 UTC |
113bc16 | Junio C Hamano | 14 March 2015, 05:56:11 UTC | Merge branch 'ak/t5516-typofix' into maint * ak/t5516-typofix: t5516: correct misspelled pushInsteadOf | 14 March 2015, 05:56:11 UTC |
bb8f6de | Junio C Hamano | 14 March 2015, 05:56:09 UTC | Merge branch 'jc/diff-test-updates' into maint Test clean-up. * jc/diff-test-updates: test_ln_s_add: refresh stat info of fake symbolic links t4008: modernise style t/diff-lib: check exact object names in compare_diff_raw tests: do not borrow from COPYING and README from the real source t4010: correct expected object names t9300: correct expected object names t4008: correct stale comments | 14 March 2015, 05:56:10 UTC |
3aab60b | Junio C Hamano | 14 March 2015, 05:56:08 UTC | Merge branch 'jk/diffcore-rename-duplicate' into maint A corrupt input to "git diff -M" can cause us to segfault. * jk/diffcore-rename-duplicate: diffcore-rename: avoid processing duplicate destinations diffcore-rename: split locate_rename_dst into two functions | 14 March 2015, 05:56:08 UTC |
ae8ada4 | Junio C Hamano | 14 March 2015, 05:56:07 UTC | Merge branch 'bw/kwset-use-unsigned' into maint The borrowed code in kwset API did not follow our usual convention to use "unsigned char" to store values that range from 0-255. * bw/kwset-use-unsigned: kwset: use unsigned char to store values with high-bit set | 14 March 2015, 05:56:07 UTC |
2408f3b | Junio C Hamano | 14 March 2015, 05:56:06 UTC | Merge branch 'nd/grep-exclude-standard-help-fix' into maint Description given by "grep -h" for its --exclude-standard option was phrased poorly. * nd/grep-exclude-standard-help-fix: grep: correct help string for --exclude-standard | 14 March 2015, 05:56:06 UTC |
3af1bca | Junio C Hamano | 14 March 2015, 05:56:05 UTC | Merge branch 'mg/doc-remote-tags-or-not' into maint "git remote add" mentioned "--tags" and "--no-tags" and was not clear that fetch from the remote in the future will use the default behaviour when neither is given to override it. * mg/doc-remote-tags-or-not: git-remote.txt: describe behavior without --tags and --no-tags | 14 March 2015, 05:56:05 UTC |
a4b4f9b | Junio C Hamano | 14 March 2015, 05:56:04 UTC | Merge branch 'mk/diff-shortstat-dirstat-fix' into maint "git diff --shortstat --dirstat=changes" showed a dirstat based on lines that was never asked by the end user in addition to the dirstat that the user asked for. * mk/diff-shortstat-dirstat-fix: diff --shortstat --dirstat: remove duplicate output | 14 March 2015, 05:56:04 UTC |
30a52c1 | Junio C Hamano | 14 March 2015, 05:56:03 UTC | Merge branch 'ms/submodule-update-config-doc' into maint The interaction between "git submodule update" and the submodule.*.update configuration was not clearly documented. * ms/submodule-update-config-doc: submodule: improve documentation of update subcommand | 14 March 2015, 05:56:03 UTC |
5244a31 | Junio C Hamano | 14 March 2015, 05:56:02 UTC | Merge branch 'jc/apply-beyond-symlink' into maint "git apply" was not very careful about reading from, removing, updating and creating paths outside the working tree (under --index/--cached) or the current directory (when used as a replacement for GNU patch). * jc/apply-beyond-symlink: apply: do not touch a file beyond a symbolic link apply: do not read from beyond a symbolic link apply: do not read from the filesystem under --index apply: reject input that touches outside the working area | 14 March 2015, 05:56:02 UTC |
1469d99 | Junio C Hamano | 14 March 2015, 05:56:00 UTC | Merge branch 'rs/daemon-interpolate' into maint "git daemon" looked up the hostname even when "%CH" and "%IP" interpolations are not requested, which was unnecessary. * rs/daemon-interpolate: daemon: use callback to build interpolated path daemon: look up client-supplied hostname lazily | 14 March 2015, 05:56:01 UTC |
c722ba4 | Junio C Hamano | 14 March 2015, 05:55:59 UTC | Merge branch 'jk/daemon-interpolate' into maint The "interpolated-path" option of "git daemon" inserted any string client declared on the "host=" capability request without checking. Sanitize and limit %H and %CH to a saner and a valid DNS name. * jk/daemon-interpolate: daemon: sanitize incoming virtual hostname t5570: test git-daemon's --interpolated-path option git_connect: let user override virtual-host we send to daemon | 14 March 2015, 05:55:59 UTC |
0d6accc | Michael J Gruber | 10 March 2015, 16:11:09 UTC | config,completion: add color.status.unmerged Reported-by: "Mladen B." <mladen074@gmail.com> Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:27:59 UTC |
3f88c1b | Kyle J. McKay | 09 March 2015, 20:03:01 UTC | t7510: do not fail when gpg warns about insecure memory Depending on how gpg was built, it may issue the following message to stderr when run: Warning: using insecure memory! When the test is collecting gpg output it is therefore not enough to just match on a "gpg: " prefix it must also match on a "Warning: " prefix wherever it needs to match lines that have been produced by gpg. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Acked-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:25:22 UTC |
ce026cc | Kyle J. McKay | 08 March 2015, 15:37:50 UTC | t5528: do not fail with FreeBSD shell The FreeBSD shell converts this expression: git ${1:+-c push.default="$1"} push to this when "$1" is not empty: git "-c push.default=$1" push which causes git to fail. To avoid this we simply break up the expansion into two parts so that the whitespace which creates two arguments instead of one is outside the ${...} like so: git ${1:+-c} ${1:+push.default="$1"} push This has the desired effect on all platforms allowing the test to pass on FreeBSD. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:23:28 UTC |
dcd01ea | Kyle J. McKay | 08 March 2015, 05:13:55 UTC | imap-send: use cURL automatically when NO_OPENSSL defined If both USE_CURL_FOR_IMAP_SEND and NO_OPENSSL are defined do not force the user to add --curl to get a working git imap-send command. Instead automatically select --curl and warn and ignore the --no-curl option. And while we're in there, correct the warning message when --curl is requested but not supported. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:19:05 UTC |
a25b5a3 | Kyle J. McKay | 08 March 2015, 07:14:37 UTC | thread-utils.c: detect CPU count on older BSD-like systems Not all systems support using sysconf to detect the number of available CPU cores. Older BSD and BSD-derived systems only provide the information via the sysctl function. If HAVE_BSD_SYSCTL is defined attempt to retrieve the number of available CPU cores using the sysctl function. If HAVE_BSD_SYSCTL is not defined or the sysctl function fails, we still attempt to get the information via sysconf. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:13:28 UTC |
9529080 | Kyle J. McKay | 08 March 2015, 07:14:36 UTC | configure: support HAVE_BSD_SYSCTL option On BSD-compatible systems some information such as the number of available CPUs may only be available via the sysctl function. Add support for a HAVE_BSD_SYSCTL option complete with autoconf support and include the sys/syctl.h header when the option is enabled to make the sysctl function available. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:13:25 UTC |
b680a86 | Kyle J. McKay | 08 March 2015, 05:08:00 UTC | help.c: use SHELL_PATH instead of hard-coded "/bin/sh" If the user has set SHELL_PATH in the Makefile then we should respect that value and use it. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:11:29 UTC |
1b56cdf | Kyle J. McKay | 08 March 2015, 05:07:59 UTC | git-compat-util.h: move SHELL_PATH default into header If SHELL_PATH is not defined we use "/bin/sh". However, run-command.c is not the only file that needs to use the default value so move it into a common header. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:11:24 UTC |
ff7a9dc | Kyle J. McKay | 08 March 2015, 05:05:38 UTC | git-instaweb: use @SHELL_PATH@ instead of /bin/sh If the user has configured a value for SHELL_PATH then be sure to use it for any generated scripts instead of hard-coding /bin/sh. The first line of the script is handled specially, but the embedded #!/bin/sh line in the here document will not be automatically updated unless it uses @SHELL_PATH@. Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:10:35 UTC |
130e475 | Kyle J. McKay | 08 March 2015, 05:04:09 UTC | git-instaweb: allow running in a working tree subdirectory Signed-off-by: Kyle J. McKay <mackyle@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 22:10:33 UTC |
7a9409c | Junio C Hamano | 10 March 2015, 20:53:49 UTC | Post 2.3 cycle (batch #9) Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 20:53:49 UTC |
82b7e65 | Junio C Hamano | 10 March 2015, 20:52:39 UTC | Merge branch 'mh/expire-updateref-fixes' Various issues around "reflog expire", e.g. using --updateref when expiring a reflog for a symbolic reference, have been corrected and/or made saner. * mh/expire-updateref-fixes: reflog_expire(): never update a reference to null_sha1 reflog_expire(): ignore --updateref for symbolic references reflog: improve and update documentation struct ref_lock: delete the force_write member lock_ref_sha1_basic(): do not set force_write for missing references write_ref_sha1(): move write elision test to callers write_ref_sha1(): remove check for lock == NULL | 10 March 2015, 20:52:40 UTC |
2d659f7 | Junio C Hamano | 10 March 2015, 20:52:38 UTC | Merge branch 'jk/diffcore-rename-duplicate' A corrupt input to "git diff -M" can cause us to segfault. * jk/diffcore-rename-duplicate: diffcore-rename: avoid processing duplicate destinations diffcore-rename: split locate_rename_dst into two functions | 10 March 2015, 20:52:39 UTC |
5751a3d | Nguyễn Thái Ngọc Duy | 10 March 2015, 10:16:35 UTC | config.txt: update versioncmp.prereleaseSuffix Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 20:51:48 UTC |
01cec54 | René Scharfe | 07 March 2015, 10:50:37 UTC | daemon: deglobalize hostname information Move the variables related to the client-supplied hostname into its own struct, let execute() own an instance of that instead of storing the information in global variables and pass the struct to any function that needs to access it as a parameter. The lifetime of the variables is easier to see this way. Allocated memory is released within execute(). The strbufs don't have to be reset anymore because they are written to only once at most: parse_host_arg() is only called once by execute() and lookup_hostname() guards against being called twice using hostname_lookup_done. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 01:18:07 UTC |
7a646ce | René Scharfe | 07 March 2015, 10:50:29 UTC | daemon: use strbuf for hostname info Convert hostname, canon_hostname, ip_address and tcp_port to strbuf. This allows to get rid of the helpers strbuf_addstr_or_null() and STRARG because a strbuf always represents a valid (initially empty) string. sanitize_client() is not needed anymore and sanitize_client_strbuf() takes its place and name. Helped-by: Jeff King <peff@peff.net> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 10 March 2015, 01:17:18 UTC |
6a536e2 | Karthik Nayak | 06 March 2015, 11:18:08 UTC | git: treat "git -C '<path>'" as a no-op when <path> is empty 'git -C ""' unhelpfully dies with error "Cannot change to ''", whereas the shell treats `cd ""' as a no-op. Taking the shell's behavior as a precedent, teach git to treat `-C ""' as a no-op, as well. Helped-by: Junio C Hamano <gitster@pobox.com> Helped-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Karthik Nayak <karthik.188@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 07 March 2015, 03:42:00 UTC |
d67f9d5 | Junio C Hamano | 06 March 2015, 23:05:39 UTC | Post 2.3 cycle (batch #8) Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 23:05:39 UTC |
52d5bf7 | Junio C Hamano | 06 March 2015, 23:02:33 UTC | Merge branch 'bw/kwset-use-unsigned' The borrowed code in kwset API did not follow our usual convention to use "unsigned char" to store values that range from 0-255. * bw/kwset-use-unsigned: kwset: use unsigned char to store values with high-bit set | 06 March 2015, 23:02:33 UTC |
36ab768 | Junio C Hamano | 06 March 2015, 23:02:32 UTC | Merge branch 'ak/t5516-typofix' * ak/t5516-typofix: t5516: correct misspelled pushInsteadOf | 06 March 2015, 23:02:32 UTC |
a11c508 | Junio C Hamano | 06 March 2015, 23:02:31 UTC | Merge branch 'ms/submodule-update-config-doc' The interaction between "git submodule update" and the submodule.*.update configuration was not clearly documented. * ms/submodule-update-config-doc: submodule: improve documentation of update subcommand | 06 March 2015, 23:02:31 UTC |
83ac11f | Junio C Hamano | 06 March 2015, 23:02:29 UTC | Merge branch 'ja/clean-confirm-i18n' The prompt string "remove?" used when "git clean -i" asks the user if a path should be removed was localizable, but the code always expects a substring of "yes" to tell it to go ahead. Always show [y/N] as part of this prompt to hint that the answer is not (yet) localized. * ja/clean-confirm-i18n: Add hint interactive cleaning | 06 March 2015, 23:02:30 UTC |
b6488fe | Junio C Hamano | 06 March 2015, 23:02:28 UTC | Merge branch 'mk/diff-shortstat-dirstat-fix' "git diff --shortstat --dirstat=changes" showed a dirstat based on lines that was never asked by the end user in addition to the dirstat that the user asked for. * mk/diff-shortstat-dirstat-fix: diff --shortstat --dirstat: remove duplicate output | 06 March 2015, 23:02:29 UTC |
79de649 | Junio C Hamano | 06 March 2015, 23:02:27 UTC | Merge branch 'mg/doc-remote-tags-or-not' "git remote add" mentioned "--tags" and "--no-tags" and was not clear that fetch from the remote in the future will use the default behaviour when neither is given to override it. * mg/doc-remote-tags-or-not: git-remote.txt: describe behavior without --tags and --no-tags | 06 March 2015, 23:02:28 UTC |
a3eea73 | Junio C Hamano | 06 March 2015, 23:02:27 UTC | Merge branch 'nd/grep-exclude-standard-help-fix' Description given by "grep -h" for its --exclude-standard option was phrased poorly. * nd/grep-exclude-standard-help-fix: grep: correct help string for --exclude-standard | 06 March 2015, 23:02:27 UTC |
34e4e05 | Junio C Hamano | 06 March 2015, 23:02:26 UTC | Merge branch 'mr/doc-clean-f-f' Documentation update. * mr/doc-clean-f-f: Documentation/git-clean.txt: document that -f may need to be given twice | 06 March 2015, 23:02:26 UTC |
74c91d1 | Junio C Hamano | 06 March 2015, 23:02:24 UTC | Merge branch 'ye/http-accept-language' Compilation fix for a recent topic in 'master'. * ye/http-accept-language: gettext.c: move get_preferred_languages() from http.c | 06 March 2015, 23:02:25 UTC |
2588882 | Junio C Hamano | 06 March 2015, 22:59:12 UTC | Sync with 2.3.2 * maint: Git 2.3.2 | 06 March 2015, 22:59:12 UTC |
1165ae6 | Junio C Hamano | 06 March 2015, 22:58:14 UTC | Git 2.3.2 Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 22:58:14 UTC |
f69f5f1 | Junio C Hamano | 06 March 2015, 22:57:58 UTC | Merge branch 'rj/no-xopen-source-for-cygwin' into maint Code cleanups. * rj/no-xopen-source-for-cygwin: git-compat-util.h: remove redundant code | 06 March 2015, 22:57:58 UTC |
f56a5f4 | Junio C Hamano | 06 March 2015, 22:57:57 UTC | Merge branch 'rs/simple-cleanups' into maint Code cleanups. * rs/simple-cleanups: sha1_name: use strlcpy() to copy strings pretty: use starts_with() to check for a prefix for-each-ref: use skip_prefix() to avoid duplicate string comparison connect: use strcmp() for string comparison | 06 March 2015, 22:57:57 UTC |
d86679f | Junio C Hamano | 06 March 2015, 22:57:56 UTC | Merge branch 'mm/am-c-doc' into maint The configuration variable 'mailinfo.scissors' was hard to discover in the documentation. * mm/am-c-doc: Documentation/git-am.txt: mention mailinfo.scissors config variable Documentation/config.txt: document mailinfo.scissors | 06 March 2015, 22:57:56 UTC |
2e7ca27 | Junio C Hamano | 06 March 2015, 22:57:55 UTC | Merge branch 'ew/svn-maint-fixes' into maint Correct a breakage to git-svn around v2.2 era that triggers premature closing of FileHandle. * ew/svn-maint-fixes: Git::SVN::*: avoid premature FileHandle closure git-svn: fix localtime=true on non-glibc environments | 06 March 2015, 22:57:55 UTC |
e1db59e | Junio C Hamano | 06 March 2015, 22:57:54 UTC | Merge branch 'km/send-email-getopt-long-workarounds' into maint Even though we officially haven't dropped Perl 5.8 support, the Getopt::Long package that came with it does not support "--no-" prefix to negate a boolean option; manually add support to help people with older Getopt::Long package. * km/send-email-getopt-long-workarounds: git-send-email.perl: support no- prefix with older GetOptions | 06 March 2015, 22:57:54 UTC |
53e53c7 | SZEDER Gábor | 04 March 2015, 14:10:29 UTC | completion: simplify __git_remotes() The __git_remotes() helper function lists the remotes from the config file by processing the output of a 'git config' query. A simple 'git remote' produces the exact same output, so run that instead. Remotes under '$GIT_DIR/remotes' are still listed by running 'ls -1', because 'git remote' unfortunately ignores them. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 20:48:02 UTC |
2acc194 | SZEDER Gábor | 04 March 2015, 14:10:28 UTC | completion: add a test for __git_remotes() helper function The test checks that both remotes under '$GIT_DIR/remotes' and remotes in the config file are listed. Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 20:48:00 UTC |
2185d3b | Eric Sunshine | 04 March 2015, 07:53:05 UTC | rebase-interactive: re-word "item count" comment 97f05f43 (Show number of TODO items for interactive rebase, 2014-12-10) taught rebase-interactive to display an item count in the instruction list comments: # Rebase 46640c6..5568fd5 onto 46640c6 (4 TODO item(s)) # # Commands: # p, pick = use commit # ... However, with the exception of the --edit-todo option, "TODO" is a one-off term, never presented to the user by rebase-interactive in any other context. The item count is in fact the number of commands ("pick", "edit", etc.) remaining on the instruction sheet, and the comment immediately following it talks about "Commands". Consequently, replace "(# TODO item(s))" with the more accurate and meaningful "(# command(s))". Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 20:25:33 UTC |
28c8cfc | Eric Sunshine | 04 March 2015, 07:53:04 UTC | rebase-interactive: suppress whitespace preceding item count 97f05f43 (Show number of TODO items for interactive rebase, 2014-12-10) taught rebase-interactive to compute an item count with 'wc -l' and display it in the instruction list comments: # Rebase 46640c6..5568fd5 onto 46640c6 (4 TODO item(s)) On Mac OS X, however, it renders as: # Rebase 46640c6..5568fd5 onto 46640c6 ( 4 TODO item(s)) since 'wc -l' indents its output with leading spaces. Fix this. Signed-off-by: Eric Sunshine <sunshine@sunshineco.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 20:11:27 UTC |
8fa7975 | Alexander Kuleshov | 02 March 2015, 12:02:37 UTC | git: make was_alias and done_help non-static 'was_alias' variable does not need to store it's value on each iteration in the loop; this variable gets assigned the result of run_argv() every time in the loop before being used. 'done_help' variable does not need to be static variable too if we move it out the loop. Signed-off-by: Alexander Kuleshov <kuleshovmail@gmail.com> Helped-by: Eric Sunshine <sunshine@sunshineco.com> Helped-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 20:03:30 UTC |
4b06318 | Michael J Gruber | 06 March 2015, 15:04:07 UTC | branch: name detached HEAD analogous to status "git status" carefully names a detached HEAD "at" resp. "from" a rev or ref depending on whether the detached HEAD has moved since. "git branch" always uses "from", which can be confusing, because a status-aware user would interpret this as moved detached HEAD. Make "git branch" use the same logic and wording. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 19:52:46 UTC |
970399e | Michael J Gruber | 06 March 2015, 15:04:06 UTC | wt-status: refactor detached HEAD analysis wt_status_print() is the only caller of wt_status_get_detached_from(). The latter performs most of the analysis of a detached HEAD, including finding state->detached_from; the caller checks whether the detached HEAD is still at state->detached_from or has moved away. Move that last bit of analysis to wt_status_get_detached_from(), too, and store the boolean result in state->detached_at. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 19:52:35 UTC |
17d65f0 | Michael J Gruber | 06 March 2015, 13:55:32 UTC | sequencer: preserve commit messages sequencer calls "commit" with default options, which implies "--cleanup=default" unless the user specified something else in their config. This leads to cherry-picked commits getting a cleaned up commit message, which is usually not an intended side-effect. Make the sequencer use "--cleanup=verbatim" so that it preserves commit messages independent of the default, unless the user has set config for "commit" or the message is amended with -s or -x. Reported-by: Christoph Anton Mitterer <calestyo@scientia.net> Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 19:11:39 UTC |
4055500 | Michael J Gruber | 06 March 2015, 09:43:35 UTC | commit/status: show the index-worktree diff with -v -v git commit and git status in long format show the diff between HEAD and the index when given -v. This allows previewing a commit to be made. They also list tracked files with unstaged changes, but without a diff. Introduce '-v -v' which shows the diff between the index and the worktree in addition to the HEAD index diff. This allows a review of unstaged changes which might be missing from the commit. In the case of '-v -v', additonal header lines Changes to be committed: and Changes not staged for commit: are inserted before the diffs, which are equal to those in the status part; the latter preceded by 50*"-" to make it stick out more. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 18:51:48 UTC |
f8c65c1 | Michael J Gruber | 06 March 2015, 09:43:34 UTC | t7508: test git status -v "status -v" had no test. Include one. This also requires changing the .gitignore subtests, which is a good thing: they include testing a .gitignore pattern now. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 18:51:46 UTC |
ec8a896 | Junio C Hamano | 06 March 2015, 09:43:33 UTC | t7508: .gitignore 'expect' and 'output' files These files are used to observe the behaviour of the 'status' command and if there weren't any such observer, the expected output from 'status' wouldn't even mention them. Place them in .gitignore to unclutter the output expected by the tests. An added benefit is that future tests can add such files that are purely for use by the observer, i.e. the tests themselves, by naming them as expect-foo and/or output-bar. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 06 March 2015, 18:51:41 UTC |
9a6f128 | René Scharfe | 05 March 2015, 22:49:46 UTC | zlib: initialize git_zstream in git_deflate_init{,_gzip,_raw} Clear the git_zstream variable at the start of git_deflate_init() etc. so that callers don't have to do that. Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 March 2015, 23:46:03 UTC |
4aff646 | René Scharfe | 05 March 2015, 19:06:02 UTC | archive-zip: mark text files in archives Set the text flag for ZIP archive entries that look like text files so that unzip -a can be used to perform end-of-line conversions. Info-ZIP zip does the same. Detect binary files the same way as git diff and git grep do, namely by checking for the attribute "diff" and its negation "-diff", and if none is found by falling back to checking for the presence of NUL bytes in the first few bytes of the file contents. 7-Zip, Windows' built-in ZIP functionality and Info-ZIP unzip without the switch -a are not affected by the change and still extract text files without doing any end-of-line conversions. NB: The actual end-of-line style used in the archive entries doesn't matter to unzip -a, as it converts any CR, CRLF and LF to the line end characters appropriate for the platform it is running on. Suggested-by: Ulrike Fischer <luatex@nililand.de> Signed-off-by: Rene Scharfe <l.s.r@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> | 05 March 2015, 23:27:48 UTC |
83036f8 | Junio C Hamano | 05 March 2015, 21:16:27 UTC | Sync with maint * maint: Prepare for 2.3.2 | 05 March 2015, 21:16:27 UTC |
3ebda3e | Junio C Hamano | 05 March 2015, 21:15:53 UTC | Prepare for 2.3.2 | 05 March 2015, 21:15:53 UTC |
1e299f5 | Junio C Hamano | 05 March 2015, 21:13:13 UTC | Merge branch 'sb/plug-leak-in-make-cache-entry' into maint "update-index --refresh" used to leak when an entry cannot be refreshed for whatever reason. * sb/plug-leak-in-make-cache-entry: read-cache.c: free cache entry when refreshing fails | 05 March 2015, 21:13:14 UTC |
4e0d620 | Junio C Hamano | 05 March 2015, 21:13:12 UTC | Merge branch 'jk/fast-import-die-nicely-fix' into maint "git fast-import" used to crash when it could not close and conclude the resulting packfile cleanly. * jk/fast-import-die-nicely-fix: fast-import: avoid running end_packfile recursively | 05 March 2015, 21:13:13 UTC |
007f7f6 | Junio C Hamano | 05 March 2015, 21:13:12 UTC | Merge branch 'es/blame-commit-info-fix' into maint "git blame" died, trying to free an uninitialized piece of memory. * es/blame-commit-info-fix: builtin/blame: destroy initialized commit_info only | 05 March 2015, 21:13:12 UTC |
3336757 | Junio C Hamano | 05 March 2015, 21:13:10 UTC | Merge branch 'ab/merge-file-prefix' into maint "git merge-file" did not work correctly in a subdirectory. * ab/merge-file-prefix: merge-file: correctly open files when in a subdir | 05 March 2015, 21:13:11 UTC |
3630be2 | Junio C Hamano | 05 March 2015, 21:13:09 UTC | Merge branch 'ps/submodule-sanitize-path-upon-add' into maint "git submodule add" failed to squash "path/to/././submodule" to "path/to/submodule". * ps/submodule-sanitize-path-upon-add: git-submodule.sh: fix '/././' path normalization | 05 March 2015, 21:13:10 UTC |
cbc8d6d | Junio C Hamano | 05 March 2015, 21:13:08 UTC | Merge branch 'jk/prune-mtime' into maint In v2.2.0, we broke "git prune" that runs in a repository that borrows from an alternate object store. * jk/prune-mtime: sha1_file: fix iterating loose alternate objects for_each_loose_file_in_objdir: take an optional strbuf path | 05 March 2015, 21:13:08 UTC |
f5a191d | Junio C Hamano | 05 March 2015, 21:13:07 UTC | Merge branch 'tc/curl-vernum-output-broken-in-7.11' into maint Certain older vintages of cURL give irregular output from "curl-config --vernum", which confused our build system. * tc/curl-vernum-output-broken-in-7.11: Makefile: handle broken curl version number in version check | 05 March 2015, 21:13:07 UTC |
e591339 | Junio C Hamano | 05 March 2015, 21:13:06 UTC | Merge branch 'es/squelch-openssl-warnings-on-macosx' into maint An earlier workaround to squelch unhelpful deprecation warnings from the complier on Mac OSX unnecessarily set minimum required version of the OS, which the user might want to raise (or lower) for other reasons. * es/squelch-openssl-warnings-on-macosx: git-compat-util: do not step on MAC_OS_X_VERSION_MIN_REQUIRED | 05 March 2015, 21:13:07 UTC |
c11c154 | Junio C Hamano | 05 March 2015, 21:13:05 UTC | Merge branch 'jc/conf-var-doc' into maint Longstanding configuration variable naming rules has been added to the documentation. * jc/conf-var-doc: CodingGuidelines: describe naming rules for configuration variables config.txt: mark deprecated variables more prominently config.txt: clarify that add.ignore-errors is deprecated | 05 March 2015, 21:13:05 UTC |
518d1c3 | Junio C Hamano | 05 March 2015, 21:13:04 UTC | Merge branch 'av/wincred-with-at-in-username-fix' into maint The credential helper for Windows (in contrib/) used to mishandle a user name with an at-sign in it. * av/wincred-with-at-in-username-fix: wincred: fix get credential if username has "@" | 05 March 2015, 21:13:04 UTC |
ab09f58 | Junio C Hamano | 05 March 2015, 21:13:03 UTC | Merge branch 'ch/new-gpg-drops-rfc-1991' into maint Older GnuPG implementations may not correctly import the keyring material we prepare for the tests to use. * ch/new-gpg-drops-rfc-1991: t/lib-gpg: sanity-check that we can actually sign t/lib-gpg: include separate public keys in keyring.gpg | 05 March 2015, 21:13:04 UTC |
069dea8 | Junio C Hamano | 05 March 2015, 21:13:03 UTC | Merge branch 'jc/remote-set-url-doc' into maint Clarify in the documentation that "remote.<nick>.pushURL" and "remote.<nick>.URL" are there to name the same repository accessed via different transports, not two separate repositories. * jc/remote-set-url-doc: Documentation/git-remote.txt: stress that set-url is not for triangular | 05 March 2015, 21:13:03 UTC |
abfed73 | Junio C Hamano | 05 March 2015, 21:13:02 UTC | Merge branch 'jk/pack-bitmap' into maint The pack bitmap support did not build with older versions of GCC. * jk/pack-bitmap: ewah: fix building with gcc < 3.4.0 | 05 March 2015, 21:13:02 UTC |
2250406 | Junio C Hamano | 05 March 2015, 21:13:00 UTC | Merge branch 'jk/config-no-ungetc-eof' into maint Reading configuration from a blob object, when it ends with a lone CR, use to confuse the configuration parser. * jk/config-no-ungetc-eof: config_buf_ungetc: warn when pushing back a random character config: do not ungetc EOF | 05 March 2015, 21:13:00 UTC |
3bef3c1 | Junio C Hamano | 05 March 2015, 21:12:59 UTC | Merge branch 'jk/decimal-width-for-uintmax' into maint We didn't format an integer that wouldn't fit in "int" but in "uintmax_t" correctly. * jk/decimal-width-for-uintmax: decimal_width: avoid integer overflow | 05 March 2015, 21:12:59 UTC |
b1cffbf | Junio C Hamano | 05 March 2015, 21:12:58 UTC | Merge branch 'jc/push-cert' into maint "git push --signed" gave an incorrectly worded error message when the other side did not support the capability. * jc/push-cert: transport-helper: fix typo in error message when --signed is not supported | 05 March 2015, 21:12:58 UTC |
6db0497 | Junio C Hamano | 05 March 2015, 21:12:57 UTC | Merge branch 'mh/deref-symref-over-helper-transport' into maint "git fetch" over a remote-helper that cannot respond to "list" command could not fetch from a symbolic reference e.g. HEAD. * mh/deref-symref-over-helper-transport: transport-helper: do not request symbolic refs to remote helpers | 05 March 2015, 21:12:57 UTC |
aaa90f5 | Junio C Hamano | 05 March 2015, 21:12:56 UTC | Merge branch 'ks/rebase-i-abbrev' into maint The insn sheet "git rebase -i" creates did not fully honor core.abbrev settings. * ks/rebase-i-abbrev: rebase -i: use full object name internally throughout the script | 05 March 2015, 21:12:56 UTC |
be2804c | Junio C Hamano | 05 March 2015, 21:12:55 UTC | Merge branch 'dp/remove-duplicated-header-inclusion' into maint Code clean-up. * dp/remove-duplicated-header-inclusion: do not include the same header twice | 05 March 2015, 21:12:55 UTC |
552f699 | Junio C Hamano | 05 March 2015, 21:12:54 UTC | Merge branch 'sb/hex-object-name-is-at-most-41-bytes-long' into maint Code clean-up. * sb/hex-object-name-is-at-most-41-bytes-long: hex.c: reduce memory footprint of sha1_to_hex static buffers | 05 March 2015, 21:12:55 UTC |