https://github.com/git/git

sort by:
Revision Author Date Message Commit Date
6be0559 Git 1.7.5-rc1 Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 April 2011, 17:57:32 UTC
e38f2a8 Sync with 1.7.4.4 06 April 2011, 17:51:30 UTC
5fb41b8 Git 1.7.4.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> 06 April 2011, 17:50:00 UTC
0c41f33 Merge branch 'nm/maint-conflicted-submodule-entries' into maint * nm/maint-conflicted-submodule-entries: submodule: process conflicting submodules only once 06 April 2011, 17:41:17 UTC
df0a6ae Merge branch 'mg/rev-list-n-reverse-doc' into maint * mg/rev-list-n-reverse-doc: git-log.txt,rev-list-options.txt: put option blocks in proper order git-log.txt,rev-list-options.txt: -n/--max-count is commit limiting 06 April 2011, 17:40:49 UTC
cea667e Merge branch 'jk/maint-remote-mirror-safer' * jk/maint-remote-mirror-safer: remote: deprecate --mirror remote: separate the concept of push and fetch mirrors remote: disallow some nonsensical option combinations 06 April 2011, 17:38:14 UTC
7e3ead1 Merge branch 'mg/doc-revisions-txt' * mg/doc-revisions-txt: revisions.txt: language improvements revisions.txt: structure with a labelled list revisions.txt: consistent use of quotes 06 April 2011, 17:37:56 UTC
b62c769 revisions.txt: language improvements Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 April 2011, 23:43:57 UTC
fa38cfc Merge branch 'maint' * maint: Documentation: trivial grammar fix in core.worktree description gitweb: Fix parsing of negative fractional timezones in JavaScript 04 April 2011, 22:02:08 UTC
2071fb0 Merge branch 'jl/submodule-fetch-on-demand' * jl/submodule-fetch-on-demand: fetch/pull: Describe --recurse-submodule restrictions in the BUGS section submodule update: Don't fetch when the submodule commit is already present fetch/pull: Don't recurse into a submodule when commits are already present Submodules: Add 'on-demand' value for the 'fetchRecurseSubmodule' option config: teach the fetch.recurseSubmodules option the 'on-demand' value fetch/pull: Add the 'on-demand' value to the --recurse-submodules option fetch/pull: recurse into submodules when necessary Conflicts: builtin/fetch.c submodule.c 04 April 2011, 22:02:01 UTC
2c320e7 Merge branch 'jc/rev-list-options-fix' * jc/rev-list-options-fix: "log --cherry-pick" documentation regression fix 04 April 2011, 17:55:38 UTC
d424a47 Documentation: trivial grammar fix in core.worktree description Signed-off-by: SZEDER Gábor <szeder@ira.uka.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 April 2011, 17:25:21 UTC
9029ebb gitweb: Fix parsing of negative fractional timezones in JavaScript Extract converting numerical timezone in the form of '(+|-)HHMM' to timezoneOffset function, and fix parsing of negative fractional timezones. This is used to format timestamps in 'blame_incremental' view; this complements commit 2b1e172 (gitweb: Fix handling of fractional timezones in parse_date, 2011-03-25). Now gitweb.cgi/git.git/blame_incremental/3fe5489:/contrib/gitview/gitview#l853 and gitweb.cgi/git.git/blame/3fe5489:/contrib/gitview/gitview#l853 show the same correct time in author's local timezone in title (on mouseover) [Aneesh Kumar K.V, 2006-02-24 00:59:42 +0530]. Signed-off-by: Jakub Narebski <jnareb@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 04 April 2011, 16:33:05 UTC
1eb71bc Merge branch 'nm/maint-conflicted-submodule-entries' * nm/maint-conflicted-submodule-entries: submodule: process conflicting submodules only once 04 April 2011, 10:41:24 UTC
44bc573 Merge branch 'maint' * maint: Start preparing for 1.7.4.4 pull: do not clobber untracked files on initial pull compat: add missing #include <sys/resource.h> Conflicts: RelNotes 03 April 2011, 20:53:11 UTC
8e84886 Start preparing for 1.7.4.4 Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 19:58:23 UTC
8c8674f pull: do not clobber untracked files on initial pull For a pull into an unborn branch, we do not use "git merge" at all. Instead, we call read-tree directly. However, we used the --reset parameter instead of "-m", which turns off the safety features. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 19:35:39 UTC
44ec754 Merge branch 'jc/index-update-if-able' into maint * jc/index-update-if-able: update $GIT_INDEX_FILE when there are racily clean entries diff/status: refactor opportunistic index update 03 April 2011, 19:33:05 UTC
be57695 Merge branch 'lt/default-abbrev' into maint * lt/default-abbrev: Rename core.abbrevlength back to core.abbrev Make the default abbrev length configurable 03 April 2011, 19:32:51 UTC
3967c99 Merge branch 'jc/maint-rev-list-culled-boundary' into maint * jc/maint-rev-list-culled-boundary: list-objects.c: don't add an unparsed NULL as a pending tree Conflicts: list-objects.c 03 April 2011, 19:32:35 UTC
1030536 Merge branch 'mm/maint-log-n-with-diff-filtering' into maint * mm/maint-log-n-with-diff-filtering: log: fix --max-count when used together with -S or -G 03 April 2011, 19:31:59 UTC
c3d1a43 Merge branch 'jk/format-patch-multiline-header' into maint * jk/format-patch-multiline-header: format-patch: rfc2047-encode newlines in headers format-patch: wrap long header lines strbuf: add fixed-length version of add_wrapped_text 03 April 2011, 19:31:19 UTC
7a4750a Merge branch 'jn/maint-instaweb-plack-fix' into maint * jn/maint-instaweb-plack-fix: git-instaweb: Change how gitweb.psgi is made runnable as standalone app 03 April 2011, 19:30:58 UTC
625589b Merge branch 'lp/config-vername-check' into maint * lp/config-vername-check: Disallow empty section and variable names Sanity-check config variable names 03 April 2011, 19:29:45 UTC
ebae9ff compat: add missing #include <sys/resource.h> Starting with commit c793430 (Limit file descriptors used by packs, 2011-02-28), git uses getrlimit to tell how many file descriptors it can use. Unfortunately it does not include the header declaring that function, resulting in compilation errors: sha1_file.c: In function 'open_packed_git_1': sha1_file.c:718: error: storage size of 'lim' isn't known sha1_file.c:721: warning: implicit declaration of function 'getrlimit' sha1_file.c:721: error: 'RLIMIT_NOFILE' undeclared (first use in this function) sha1_file.c:718: warning: unused variable 'lim' The standard header to include for this is <sys/resource.h> (which on some systems itself requires declarations from <sys/types.h> or <sys/time.h>). Probably the problem was missed until now because in current glibc sys/resource.h happens to be included by sys/wait.h. MinGW does not provide sys/resource.h (and compat/mingw takes care of providing getrlimit some other way), so add the missing #include to the "#ifndef __MINGW32__" block in git-compat-util.h. Reported-by: Stefan Sperling <stsp@stsp.name> Tested-by: Stefan Sperling <stsp@stsp.name> [on OpenBSD] Tested-by: Arnaud Lacombe <lacombar@gmail.com> [on FreeBSD 8] Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 19:21:34 UTC
485cdb9 git.el: Don't use font-lock-compile-keywords If font-lock is disabled, font-lock-compile-keywords complains. Really what we want to do is to replace log-edit's font-lock definitions with our own, so define a major mode deriving from log-edit and set up font-lock-defaults there. We then use the optional MODE argument to log-edit to set up the major mode of the commit buffer appropriately. Signed-off-by: Lawrence Mitchell <wence@gmx.li> Acked-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 18:08:54 UTC
6b3d83e t2019-checkout-ambiguous-ref.sh: depend on C_LOCALE_OUTPUT The t2019-checkout-ambiguous-ref.sh tests added in v1.7.4.3~12^2 examines the output for a translatable string, and must be marked with C_LOCALE_OUTPUT; otherwise, GETTEXT_POISON=YesPlease tests will break. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 18:06:07 UTC
13ee138 Fix two unused variable warnings in gcc 4.6 Seen with -Wunused-but-set-variable. Signed-off-by: Dan McGee <dpmcgee@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 17:59:40 UTC
37be802 Remove old binaries from .gitignore These two programs were dumped a while ago. Signed-off-by: Dan McGee <dpmcgee@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 17:32:13 UTC
1e4cd68 sparse: Fix errors and silence warnings * load_file() returns a void pointer but is using 0 for the return value * builtin/receive-pack.c forgot to include builtin.h * packet_trace_prefix can be marked static * ll_merge takes a pointer for its last argument, not an int * crc32 expects a pointer as the second argument but Z_NULL is defined to be 0 (see 38f4d13 sparse fix: Using plain integer as NULL pointer, 2006-11-18 for more info) Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 17:14:53 UTC
cb35c06 Update release notes As 1.7.4.3 has backmerged a handful of fixes from the master, drop these entries from 1.7.5 release notes. Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 07:18:50 UTC
8f84c95 Sync with 1.7.4.3 03 April 2011, 07:14:16 UTC
d83a831 Git 1.7.4.3 Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 07:12:31 UTC
c14f372 Doc: mention --delta-base-offset is the default for Porcelain commands The underlying pack-objects plumbing command still needs an explicit option from the command line, but these days Porcelain passes the option, so there is no need for end users to worry about it anymore. Signed-off-by: Junio C Hamano <gitster@pobox.com> 03 April 2011, 06:08:13 UTC
c4b2ce6 Merge branch 'nd/init-gitdir' * nd/init-gitdir: init, clone: support --separate-git-dir for .git file git-init.txt: move description section up Conflicts: builtin/clone.c 02 April 2011, 00:57:37 UTC
ffc5e3c Merge branch 'jc/merge-sans-branch' * jc/merge-sans-branch: merge: merge with the default upstream branch without argument merge: match the help text with the documentation Conflicts: builtin/merge.c 02 April 2011, 00:57:16 UTC
b966427 Merge branch 'jr/grep-en-config' * jr/grep-en-config: grep: allow -E and -n to be turned on by default via configuration 02 April 2011, 00:56:27 UTC
6c80cd2 Merge branch 'ab/i18n-st' * ab/i18n-st: (69 commits) i18n: git-shortlog basic messages i18n: git-revert split up "could not revert/apply" message i18n: git-revert literal "me" messages i18n: git-revert "Your local changes" message i18n: git-revert basic messages i18n: git-notes GIT_NOTES_REWRITE_MODE error message i18n: git-notes basic commands i18n: git-gc "Auto packing the repository" message i18n: git-gc basic messages i18n: git-describe basic messages i18n: git-clean clean.requireForce messages i18n: git-clean basic messages i18n: git-bundle basic messages i18n: git-archive basic messages i18n: git-status "renamed: " message i18n: git-status "Initial commit" message i18n: git-status "Changes to be committed" message i18n: git-status shortstatus messages i18n: git-status "nothing to commit" messages i18n: git-status basic messages ... Conflicts: builtin/branch.c builtin/checkout.c builtin/clone.c builtin/commit.c builtin/grep.c builtin/merge.c builtin/push.c builtin/revert.c t/t3507-cherry-pick-conflict.sh t/t7607-merge-overwrite.sh 02 April 2011, 00:55:55 UTC
84dd63e Merge branch 'jk/pull-into-empty' * jk/pull-into-empty: pull: do not clobber untracked files on initial pull merge: merge unborn index before setting ref 02 April 2011, 00:50:54 UTC
82d861f Merge branch 'sb/sparse-more' * sb/sparse-more: Makefile: Cover more files with make check 02 April 2011, 00:50:20 UTC
142c945 Merge branch 'maint' * maint: docs: fix filter-branch subdir example for exotic repo names 02 April 2011, 00:45:59 UTC
094574b Merge branch 'nd/index-doc' into maint * nd/index-doc: doc: technical details about the index file format doc: technical details about the index file format 01 April 2011, 23:23:55 UTC
2aa5b6b Merge branch 'pk/stash-apply-status-relative' into maint * pk/stash-apply-status-relative: Add test: git stash shows status relative to current dir git stash: show status relative to current directory 01 April 2011, 23:23:43 UTC
bcf3d1f Merge branch 'jc/maint-diff-q-filter' into maint * jc/maint-diff-q-filter: diff --quiet: disable optimization when --diff-filter=X is used 01 April 2011, 23:23:34 UTC
bf87e09 Merge branch 'js/maint-stash-index-copy' into maint * js/maint-stash-index-copy: stash: copy the index using --index-output instead of cp -p stash: fix incorrect quoting in cleanup of temporary files 01 April 2011, 23:23:21 UTC
b7f6afe Merge branch 'mg/doc-bisect-tweak-worktree' into maint * mg/doc-bisect-tweak-worktree: git-bisect.txt: example for bisecting with hot-fix git-bisect.txt: streamline run presentation 01 April 2011, 23:23:15 UTC
ac53196 Merge branch 'jh/maint-do-not-track-non-branches' into maint * jh/maint-do-not-track-non-branches: branch/checkout --track: Ensure that upstream branch is indeed a branch 01 April 2011, 23:20:45 UTC
f35bb7c Merge branch 'fk/maint-cvsimport-early-failure' into maint * fk/maint-cvsimport-early-failure: git-cvsimport.perl: Bail out right away when reading from the server fails 01 April 2011, 23:20:24 UTC
4584c94 Merge branch 'jc/maint-apply-report-offset' into maint * jc/maint-apply-report-offset: apply -v: show offset count when patch did not apply exactly 01 April 2011, 23:20:19 UTC
b46c9fa Merge branch 'jc/maint-apply-no-double-patch' into maint * jc/maint-apply-no-double-patch: apply: do not patch lines that were already patched 01 April 2011, 23:20:11 UTC
46a1f07 Merge branch 'js/checkout-untracked-symlink' into maint * js/checkout-untracked-symlink: do not overwrite untracked symlinks Demonstrate breakage: checkout overwrites untracked symlink with directory 01 April 2011, 23:19:03 UTC
d12d8ec Merge "checkout ambiguous ref bugfix" into maint * commit '0cb6ad3': checkout: fix bug with ambiguous refs 01 April 2011, 23:16:51 UTC
3add01b "log --cherry-pick" documentation regression fix Earlier f98fd43 (git-log.txt,rev-list-options.txt: put option blocks in proper order, 2011-03-08) moved the text around in the documentation for options in the rev-list family of commands such as "log". Consequently, the description of the --cherry-pick option appears way above the description of the --left-right option now. But the description of the --cherry-pick option still refers to the example for the --left-right option, like this: ... with --left-right, like the example ABOVE in the description of that option. Rephrase it to clarify that we are making a forward reference. Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 April 2011, 22:14:38 UTC
61e508d revisions.txt: structure with a labelled list Currently, the reader has to parse a textual description in order to find a specific syntax in the list. Restructure as a labelled list with systematic labels as well as concrete examples as a visual guide. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 April 2011, 22:08:32 UTC
83456b1 revisions.txt: consistent use of quotes Our use of quotes is inconsistent everywhere and within some files. Before reworking the structure of revisions.txt, make the quotes consistent: `git command` 'some snippet or term' The former gets typeset as code, the latter with some form of emphasis. the man backend uses two types of emphasis. Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 April 2011, 22:06:54 UTC
6cb0186 docs: fix filter-branch subdir example for exotic repo names The GIT_INDEX_FILE variable we get from git has the full path to the repo, which may contain spaces. When we use it in our shell snippet, it needs to be quoted. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 01 April 2011, 19:17:45 UTC
6acef04 Git 1.7.5-rc0 Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 March 2011, 20:58:47 UTC
bcef9b6 Merge branch 'maint' * maint: parse-remote: typofix 31 March 2011, 02:33:53 UTC
2352570 parse-remote: typofix An earlier patch had a trivial typo that two people did not notice. Pointed out by Michael Schubert. Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 March 2011, 02:33:41 UTC
313ee0d submodule: process conflicting submodules only once During a merge module_list returns conflicting submodules several times (stage 1,2,3) which caused the submodules to be used multiple times in git submodule init, sync, update and status command. There are 5 callers of module_list; they all read (mode, sha1, stage, path) tuple, and most of them care only about path. As a first level approximation, it should be Ok (in the sense that it does not make things worse than it currently is) to filter the duplicate paths from module_list output, but some callers should change their behaviour when the merge in the superproject still has conflicts. Notice the higher-stage entries, and emit only one record from module_list, but while doing so, mark the entry with "U" (not [0-3]) in the $stage field and null out the SHA-1 part, as the object name for the lowest stage does not give any useful information to the caller, and this way any caller that uses the object name would hopefully barf. Then update the codepaths for each subcommands this way: - "update" should not touch the submodule repository, because we do not know what commit should be checked out yet. - "status" reports the conflicting submodules as 'U000...000' and does not recurse into them (we might later want to make it recurse). - The command called by "foreach" may want to do whatever it wants to do by noticing the merged status in the superproject itself, so feed the path to it from module_list as before, but only once per submodule. - "init" and "sync" are unlikely things to do while the superproject is still not merged, but as long as a submodule is there in $path, there is no point skipping it. It might however want to take the merged status of .gitmodules into account, but that is outside of the scope of this topic. Acked-by: Jens Lehmann <Jens.Lehmann@web.de> Thanks-to: Junio C Hamano <gitster@pobox.com> Signed-off-by: Nicolas Morey-Chaisemartin <nicolas@morey-chaisemartin.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 31 March 2011, 00:34:08 UTC
17a0299 Merge branch 'maint' * maint: contrib/thunderbird-patch-inline: do not require bash to run the script t8001: check the exit status of the command being tested strbuf.h: remove a tad stale docs-in-comment and reference api-doc instead Typos: t/README Documentation/config.txt: make truth value of numbers more explicit git-pack-objects.txt: fix grammatical errors parse-remote: replace unnecessary sed invocation 30 March 2011, 21:10:41 UTC
0990248 remote: deprecate --mirror The configuration created by plain --mirror is dangerous and useless, and we now have --mirror=fetch and --mirror=push to replace it. Let's warn the user. One alternative to this is to try to guess which type the user wants. In a non-bare repository, a fetch mirror doesn't make much sense, since it would overwrite local commits. But in a bare repository, you might use either type, or even both (e.g., if you are acting as an intermediate drop-point across two disconnected networks). So rather than try for complex heuristics, let's keep it simple. The user knows what they're trying to do, so let them tell us. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 20:47:54 UTC
a9f5a35 remote: separate the concept of push and fetch mirrors git-remote currently has one option, "--mirror", which sets up mirror configuration which can be used for either fetching or pushing. It looks like this: [remote "mirror"] url = wherever fetch = +refs/*:refs/* mirror = true However, a remote like this can be dangerous and confusing. Specifically: 1. If you issue the wrong command, it can be devastating. You are not likely to "push" when you meant to "fetch", but "git remote update" will try to fetch it, even if you intended the remote only for pushing. In either case, the results can be quite destructive. An unintended push will overwrite or delete remote refs, and an unintended fetch can overwrite local branches. 2. The tracking setup code can produce confusing results. The fetch refspec above means that "git checkout -b new master" will consider refs/heads/master to come from the remote "mirror", even if you only ever intend to push to the mirror. It will set up the "new" branch to track mirror's refs/heads/master. 3. The push code tries to opportunistically update tracking branches. If you "git push mirror foo:bar", it will see that we are updating mirror's refs/heads/bar, which corresponds to our local refs/heads/bar, and will update our local branch. To solve this, we split the concept into "push mirrors" and "fetch mirrors". Push mirrors set only remote.*.mirror, solving (2) and (3), and making an accidental fetch write only into FETCH_HEAD. Fetch mirrors set only the fetch refspec, meaning an accidental push will not force-overwrite or delete refs on the remote end. The new syntax is "--mirror=<fetch|push>". For compatibility, we keep "--mirror" as-is, setting up both types simultaneously. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 20:47:53 UTC
13fc2c1 remote: disallow some nonsensical option combinations It doesn't make sense to use "-m" on a mirror, since "-m" sets up the HEAD symref in the remotes namespace, but with mirror, we are by definition not using a remotes namespace. Similarly, it does not make much sense to specify refspecs with --mirror. For a mirror you plan to push to, those refspecs will be ignored. For a mirror you are fetching from, there is no point in mirroring, since the refspec specifies everything you want to grab. There is one case where "--mirror -t <X>" would be useful. Because <X> is used as-is in the refspec, and because we append it to to refs/, you could mirror a subset of the hierarchy by doing: git remote add --mirror -t 'tags/*' But using anything besides a single branch as an argument to "-t" is not documented and only happens to work, so closing it off is not a serious regression. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 20:47:51 UTC
b22520a grep: allow -E and -n to be turned on by default via configuration Add two configration variables grep.extendedRegexp and grep.lineNumbers to allow the user to skip typing -E and -n on the command line, respectively. Scripts that are meant to be used by random users and/or in random repositories now have use -G and/or --no-line-number options as appropriately to override the settings in the repository or user's ~/.gitconfig settings. Just because the script didn't say "git grep -n" no longer guarantees that the output from the command will not have line numbers. Signed-off-by: Joe Ratterman <jratt0@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 20:17:07 UTC
806e0ab contrib/thunderbird-patch-inline: do not require bash to run the script The script does not have to be run under bash, but any POSIX compliant shell would do, as it does not use any bash-isms. It may be written under a different style than what is recommended in Documentation/CodingGuidelines, but that is a different matter. While at it, fix obvious typos in the comment. Signed-off-by: Maxin B. John <maxin@maxinbjohn.info> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 19:29:39 UTC
4b705f4 t8001: check the exit status of the command being tested Avoid running the command being tested as an upstream of a pipe; doing so will lose its exit status. While at it, modernise the style of the script. Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 19:22:05 UTC
e039011 strbuf.h: remove a tad stale docs-in-comment and reference api-doc instead Signed-off-by: Michael Witten <mfwitten@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 19:02:50 UTC
63d3294 Typos: t/README Signed-off-by: Michael Witten <mfwitten@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 18:59:52 UTC
18b19e4 Documentation/config.txt: make truth value of numbers more explicit Change the order to 1/0 to have the same true/false order as the rest of the possibilities for a boolean variable in order not not confuse users. Signed-off-by: Carlos Martín Nieto <cmn@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 18:44:59 UTC
2f8ee02 git-pack-objects.txt: fix grammatical errors Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 18:43:15 UTC
9ecd3ad parse-remote: replace unnecessary sed invocation Just use parameter expansion instead. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 30 March 2011, 18:42:08 UTC
44a9ced Merge branch 'svn-fe' of git://repo.or.cz/git/jrn * 'svn-fe' of git://repo.or.cz/git/jrn: tests: kill backgrounded processes more robustly vcs-svn: a void function shouldn't try to return something tests: make sure input to sed is newline terminated vcs-svn: add missing cast to printf argument 30 March 2011, 17:49:13 UTC
a892a2d tests: kill backgrounded processes more robustly t0081 creates several background processes that write to a fifo and then go to sleep for a while (so the reader of the fifo does not see EOF). Each background process is made in a curly-braced block in the shell, and after we are done reading from the fifo, we use "kill $!" to kill it off. For a simple, single-command process, this works reliably and kills the child sleep process. But for more complex commands like "make_some_output && sleep", the results are less predictable. When executing under bash, we end up with a subshell that gets killed by the $! but leaves the sleep process still alive. This is bad not only for process hygeine (we are leaving random sleep processes to expire after a while), but also interacts badly with the "prove" command. When prove executes a test, it does not realize the test is done when it sees SIGCHLD, but rather waits until the test's stdout pipe is closed. The orphaned sleep process may keep that pipe open via test-lib's file descriptor 5, causing prove to hang for 100 seconds. The solution is to explicitly use a subshell and to exec the final sleep process, so that when we "kill $!" we get the process id of the sleep process. [jn: original patch by Jeff had some additional bits: 1. Wrap the "kill" in a test_when_finished, since we want to clean up the process whether the test succeeds or not. 2. The "kill" is part of our && chain for test success. It probably won't fail, but it can if the process has expired before we manage to kill it. So let's mark it as OK to fail. I'm postponing that for now.] Reported-by: Junio C Hamano <gitster@pobox.com> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> 30 March 2011, 04:18:27 UTC
537d990 Merge branch 'maint' * maint: HOME must be set before calling git-init when creating test repositories 29 March 2011, 21:09:15 UTC
96220d8 Merge branch 'jc/fetch-progressive-stride' * jc/fetch-progressive-stride: Fix potential local deadlock during fetch-pack 29 March 2011, 21:09:08 UTC
2eee139 Merge branches 'sp/maint-fetch-pack-stop-early' and 'sp/maint-upload-pack-stop-early' * sp/maint-fetch-pack-stop-early: enable "no-done" extension only when fetching over smart-http * sp/maint-upload-pack-stop-early: enable "no-done" extension only when serving over smart-http 29 March 2011, 21:09:02 UTC
9e11398 vcs-svn: a void function shouldn't try to return something As v1.7.4-rc0~184 (2010-10-04) and C99 §6.8.6.4.1 remind us, standard C does not permit returning an expression of type void, even for a tail call. Noticed with gcc -pedantic: vcs-svn/svndump.c: In function 'handle_node': vcs-svn/svndump.c:213:3: warning: ISO C forbids 'return' with expression, in function returning void [-pedantic] [jn: with simplified log message] Signed-off-by: Michael Witten <mfwitten@gmail.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> 29 March 2011, 19:47:02 UTC
4e10cf9 Revert two "no-done" reverts Last night I had to make these two emergency reverts, but now we have a better understanding of which part of the topic was broken, let's get rid of the revert to fix it correctly. Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 March 2011, 19:29:10 UTC
cf2ad8e enable "no-done" extension only when serving over smart-http Do not advertise no-done capability when upload-pack is not serving over smart-http, as there is no way for this server to know when it should stop reading in-flight data from the client, even though it is necessary to drain all the in-flight data in order to unblock the client. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> 29 March 2011, 19:21:28 UTC
44d8dc5 Fix potential local deadlock during fetch-pack The fetch-pack/upload-pack protocol relies on the underlying transport (local pipe or TCP socket) to have enough slack to allow one window worth of data in flight without blocking the writer. Traditionally we always relied on being able to have two windows of 32 "have"s in flight (roughly 3k bytes) to stream. The recent "progressive-stride" change allows "fetch-pack" to send up to 1024 "have"s without reading any response from "upload-pack". The outgoing pipe of "upload-pack" can be clogged with many ACK and NAK that are unread, while "fetch-pack" is still stuffing its outgoing pipe with more "have"s, leading to a deadlock. Revert the change unless we are in stateless rpc (aka smart-http) mode, as using a large window full of "have"s is still a good way to help reduce the number of back-and-forth, and there is no buffering issue there (it is strictly "ping-pong" without an overlap). Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 March 2011, 19:20:22 UTC
8e9182e enable "no-done" extension only when fetching over smart-http When 'no-done' protocol extension is used, the upload-pack (i.e. the server side) process stops listening to the fetch-pack after issuing the final NAK, and starts sending the generated pack data back, but there may be more "have" send by the latter in flight that the fetch-pack is expecting to be responded with ACK/NAK. This will typically result in a deadlock (both will block on write that the other end never reads) or SIGPIPE on the fetch-pack end (upload-pack will finish writing a small pack and goes away). Disable it unless fetch-pack is running under smart-http, where there is no such streaming issue. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Shawn O. Pearce <spearce@spearce.org> 29 March 2011, 19:19:58 UTC
90cff96 HOME must be set before calling git-init when creating test repositories Otherwise the created test repositories will be affected by users ~/.gitconfig. For example, setting core.logAllrefupdates in users config will make all calls to "git config --unset core.logAllrefupdates" fail which will break the first test which uses the statement and expects it to succeed. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Acked-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 29 March 2011, 08:13:36 UTC
4c502d6 tests: make sure input to sed is newline terminated POSIX only requires sed to work on text files and because it does not end with a newline, this commit's content is not a text file. Add a newline to fix it. Without this change, OS X sed helpfully adds a newline to actual.message, causing t9010.13 to fail. Reported-by: Torsten Bögershausen <tboegi@web.de> Tested-by: Brian Gernhardt <benji@silverinsanity.com> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> 29 March 2011, 07:14:23 UTC
07514c8 Revert "fetch-pack: Implement no-done capability" This reverts commit 761ecf0bc7b6cddf311f00877c59e6381cdbdeea. 29 March 2011, 06:35:39 UTC
4793b7e Revert "upload-pack: Implement no-done capability" This reverts 3e63b21 (upload-pack: Implement no-done capability, 2011-03-14). Together with 761ecf0 (fetch-pack: Implement no-done capability, 2011-03-14) it seems to make the fetch-pack process out of sync and makes it keep talking long after upload-pack stopped listening to it, terminating the process with SIGPIPE. 29 March 2011, 06:33:51 UTC
61e8aaf Merge branch 'maint' * maint: git tag documentation grammar fixes and readability updates grep: Add the option '--line-number' 28 March 2011, 21:17:17 UTC
f1723ee git tag documentation grammar fixes and readability updates ... with help from Eric Raible. In addition, describe the use of GIT_COMMITTER_DATE more comprehensively by including "date-formats.txt" Signed-off-by: Michael Witten <mfwitten@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 March 2011, 21:14:45 UTC
730477f tests: fix overeager scrubbing of environment variables In commit 95a1d12e9b9f ("tests: scrub environment of GIT_* variables") all environment variables starting with "GIT_" were unset for the tests using a perl script rather than unsetting them one by one. Only three exceptions were made to make them work as before: "GIT_TRACE*", "GIT_DEBUG*" and "GIT_USE_LOOKUP". Unfortunately some environment variables used by the test framework itself were not added to the exceptions and thus stopped working when given before the make command instead of after it. Those are: - GIT_NOTES_TIMING_TESTS - GIT_PATCHID_TIMING_TESTS - GIT_PROVE_OPTS - GIT_REMOTE_SVN_TEST_BIG_FILES - GIT_SKIP_TESTS - GIT_TEST* - GIT_VALGRIND_OPTIONS I noticed that when skipping a test the way I was used to suddenly failed: GIT_SKIP_TESTS='t1234' GIT_TEST_OPTS='--root=/dev/shm' make -j10 test This should work according to t/README, but didn't anymore, so let's fix that by adding them to the exception list. And to avoid having a long regexp put the exceptions in a separate variable using nicer formatting. Signed-off-by: Jens Lehmann <Jens.Lehmann@web.de> Acked-by: Jonathan Nieder <jrnieder@gmail.com> Thanks-to: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 March 2011, 21:08:36 UTC
7d6cb10 grep: Add the option '--line-number' This is a synonym for the existing '-n' option, matching GNU grep. Signed-off-by: Joe Ratterman <jratt0@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 March 2011, 21:02:12 UTC
cea13a8 Improve test for pthreads flag When compiling with CC=clang using Clang 1.1 as shipped by Debian unstable (package version 2.7-3), the -mt flag is sufficient to compile during the `configure` test. However, building git would then fail at link time complaining about missing symbols such as `pthread_key_create' and `pthread_create'. Work around this issue by adding pthread key creation to the pthreads configure test source. Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 March 2011, 17:54:54 UTC
8cc299d vcs-svn: add missing cast to printf argument gcc -m32 correctly warns: vcs-svn/fast_export.c: In function 'fast_export_commit': vcs-svn/fast_export.c:54:2: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 2 has type 'unsigned int' [-Wformat] Fix it. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com> 28 March 2011, 16:46:44 UTC
41e6b91 vcs-svn: add missing cast to printf argument gcc -m32 correctly warns: vcs-svn/fast_export.c: In function 'fast_export_commit': vcs-svn/fast_export.c:54:2: warning: format '%llu' expects argument of type 'long long unsigned int', but argument 2 has type 'unsigned int' [-Wformat] Fix it. Signed-off-by: Jonathan Nieder <jrnieder@gmail.com> 27 March 2011, 17:21:12 UTC
be919d5 Update draft release note to 1.7.5 Signed-off-by: Junio C Hamano <gitster@pobox.com> 27 March 2011, 03:17:15 UTC
bf0c5bb Merge branch 'mg/rev-list-n-parents' * mg/rev-list-n-parents: tests: avoid nonportable {foo,bar} glob rev-list --min-parents,--max-parents: doc, test and completion revision.c: introduce --min-parents and --max-parents options t6009: use test_commit() from test-lib.sh 27 March 2011, 03:13:17 UTC
8194fca Merge branch 'js/remove-unused-variables' * js/remove-unused-variables: Remove unused variables 27 March 2011, 03:13:17 UTC
908535c Merge branch 'jp/completion-help-alias' * jp/completion-help-alias: git-completion: Add git help completion for aliases 27 March 2011, 03:13:17 UTC
149971b Merge branch 'jc/index-update-if-able' * jc/index-update-if-able: update $GIT_INDEX_FILE when there are racily clean entries diff/status: refactor opportunistic index update 27 March 2011, 03:13:16 UTC
4d46ee7 Merge branch 'jk/checkout-orphan-warning' * jk/checkout-orphan-warning: checkout: tweak detached-orphan warning format checkout: clear commit marks after detached-orphan check checkout: add basic tests for detached-orphan warning 27 March 2011, 03:13:16 UTC
ad7bb2f Merge branch 'jc/maint-rerere-in-workdir' * jc/maint-rerere-in-workdir: rerere: make sure it works even in a workdir attached to a young repository 27 March 2011, 03:13:16 UTC
back to top