summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2009-10-26git-svn: convert SVN 1.5+ / svnmerge.py svn:mergeinfo props to parentsLibravatar Sam Vilain2-0/+114
This feature is long overdue; convert SVN's merge representation to git's as revisions are imported. This works by converting the list of revisions in each line of the svn:mergeinfo into git revision ranges, and then checking the latest of each of these revision ranges for A) being new and B) now being completely merged. Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Acked-by: Eric Wong <normalperson@yhbt.net>
2009-10-26git-svn: add test data for SVN 1.5+ merge, with script.Libravatar Sam Vilain3-0/+811
Dump generated with SVN 1.5.1 (on lenny amd64). This test should hopefully cover all but a few intermediate versions of the svnmerge.py script. Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Acked-by: Eric Wong <normalperson@yhbt.net>
2009-10-26git-svn: convert SVK merge tickets to extra parentsLibravatar Sam Vilain2-1/+74
SVK is a simple case to start with, as its idea of merge parents matches git's one. When a svk:merge ticket is encountered, check each of the listed merged revisions to see if they are in the history of this commit; if not, then we have encountered a merge - record it. [ew: minor formatting cleanups] Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Acked-by: Eric Wong <normalperson@yhbt.net>
2009-10-26git-svn: allow test setup script to support PERL env. varLibravatar Sam Vilain1-2/+3
Possibly the 'perl' in the PATH is not the one to be used for the tests; let PERL set in the environment select it. Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Acked-by: Eric Wong <normalperson@yhbt.net>
2009-10-26git-svn: add test data for SVK merge, with script.Libravatar Sam Vilain2-0/+673
Dump generated with SVK 2.0.2 and SVN 1.5.1 (on lenny amd64). Signed-off-by: Sam Vilain <sam.vilain@catalyst.net.nz> Acked-by: Eric Wong <normalperson@yhbt.net>
2009-10-26git svn: fix fetch where glob is on the top-level URLLibravatar Eric Wong1-2/+2
In cases where the top-level URL we're tracking is the path we glob against, we can once again track odd repositories that keep branches/tags at the top level. This regression was introduced in commit 6f5748e14cc5bb0a836b649fb8e2d6a5eb166f1d. Thanks to Daniel Cordero for the original bug report and bisection. Signed-off-by: Eric Wong <normalperson@yhbt.net>
2009-10-25Update draft release notes to 1.6.6Libravatar Junio C Hamano1-0/+37
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-25Merge branch 'sb/gitweb-link-author'Libravatar Junio C Hamano2-5/+39
* sb/gitweb-link-author: gitweb: linkify author/committer names with search
2009-10-25Merge branch 'jk/maint-cvsimport-pathname'Libravatar Junio C Hamano1-3/+14
* jk/maint-cvsimport-pathname: cvsimport: fix relative argument filenames
2009-10-25Merge branch 'iv/tar-lzma-xz'Libravatar Junio C Hamano1-1/+4
* iv/tar-lzma-xz: import-tars: Add support for tarballs compressed with lzma, xz
2009-10-25Merge branch 'bg/clone-doc'Libravatar Junio C Hamano1-13/+13
* bg/clone-doc: git-clone.txt: Fix grammar and formatting
2009-10-25Merge branch 'jc/receive-pack-auto'Libravatar Junio C Hamano3-4/+36
* jc/receive-pack-auto: receive-pack: run "gc --auto --quiet" and optionally "update-server-info" gc --auto --quiet: make the notice a bit less verboase
2009-10-25Merge branch 'jc/fsck-default-full'Libravatar Junio C Hamano3-3/+15
* jc/fsck-default-full: fsck: default to "git fsck --full"
2009-10-25Sync with 1.6.5.2Libravatar Junio C Hamano3-6/+24
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-25GIT 1.6.5.2Libravatar Junio C Hamano4-3/+23
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-25Merge branch 'jc/maint-fix-unpack-zlib-check' into maintLibravatar Junio C Hamano1-5/+3
* jc/maint-fix-unpack-zlib-check: Fix incorrect error check while reading deflated pack data
2009-10-25Merge branch 'maint-1.6.4' into maintLibravatar Junio C Hamano2-8/+32
* maint-1.6.4: ls-files: excludes should not impact tracked files
2009-10-25Merge branch 'jk/maint-1.6.3-ls-files-no-ignore-cached' into maint-1.6.4Libravatar Junio C Hamano2-8/+32
* jk/maint-1.6.3-ls-files-no-ignore-cached: ls-files: excludes should not impact tracked files
2009-10-25Merge branch 'jn/maint-1.6.3-check-ref-format-doc' into maint-1.6.4Libravatar Junio C Hamano1-3/+6
* jn/maint-1.6.3-check-ref-format-doc: Documentation: describe check-ref-format --branch
2009-10-25Merge branch 'maint'Libravatar Junio C Hamano2-2/+2
* maint: t7800-difftool: fix the effectless GIT_DIFFTOOL_PROMPT test Work around option parsing bug in the busybox tar implementation
2009-10-24t7800-difftool: fix the effectless GIT_DIFFTOOL_PROMPT testLibravatar Markus Heidelberg1-1/+1
GIT_DIFFTOOL_PROMPT doesn't have any effect if overridden with --prompt. Signed-off-by: Markus Heidelberg <markus.heidelberg@web.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-24Work around option parsing bug in the busybox tar implementationLibravatar Andreas Schwab1-1/+1
The first argument of the tar command is interpreted as a bundle of letters specifying the mode of operation and additional options, with any option arguments taken from subsequent words on the command line as needed. The implementation of tar in busybox treats this bundle as if preceded by a dash and then parses it by getopt rules, which mishandles 'tar xfo -'. Use 'tar xof -' instead to work this around. Signed-off-by: Andreas Schwab <schwab@linux-m68k.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-23Merge branch 'maint'Libravatar Junio C Hamano3-2/+4
* maint: Fix list of released versions in the toc document Do not fail "describe --always" in a tag-less repository
2009-10-23Fix list of released versions in the toc documentLibravatar Junio C Hamano1-1/+1
2009-10-23Merge branch 'jp/maint-send-email-fold' into maintLibravatar Junio C Hamano2-22/+78
* jp/maint-send-email-fold: git-send-email.perl: fold multiple entry "Cc:" and multiple single line "RCPT TO:"s
2009-10-23Merge branch 'jn/maint-1.6.3-check-ref-format-doc' into maintLibravatar Junio C Hamano1-3/+6
* jn/maint-1.6.3-check-ref-format-doc: Documentation: describe check-ref-format --branch
2009-10-23Merge branch 'pv/maint-add-p-no-exclude' into maintLibravatar Junio C Hamano2-1/+15
* pv/maint-add-p-no-exclude: git-add--interactive: never skip files included in index
2009-10-23Do not fail "describe --always" in a tag-less repositoryLibravatar Junio C Hamano2-1/+3
This fixes a regression introduce by d68dc34 (git-describe: Die early if there are no possible descriptions, 2009-08-06). Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21Fix incorrect error check while reading deflated pack dataLibravatar Junio C Hamano1-5/+3
The loop in get_size_from_delta() feeds a deflated delta data from the pack stream _until_ we get inflated result of 20 bytes[*] or we reach the end of stream. Side note. This magic number 20 does not have anything to do with the size of the hash we use, but comes from 1a3b55c (reduce delta head inflated size, 2006-10-18). The loop reads like this: do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); curpos += stream.next_in - in; } while ((st == Z_OK || st == Z_BUF_ERROR) && stream.total_out < sizeof(delta_head)); This git_inflate() can return: - Z_STREAM_END, if use_pack() fed it enough input and the delta itself was smaller than 20 bytes; - Z_OK, when some progress has been made; - Z_BUF_ERROR, if no progress is possible, because we either ran out of input (due to corrupt pack), or we ran out of output before we saw the end of the stream. The fix b3118bd (sha1_file: Fix infinite loop when pack is corrupted, 2009-10-14) attempted was against a corruption that appears to be a valid stream that produces a result larger than the output buffer, but we are not even trying to read the stream to the end in this loop. If avail_out becomes zero, total_out will be the same as sizeof(delta_head) so the loop will terminate without the "fix". There is no fix from b3118bd needed for this loop, in other words. The loop in unpack_compressed_entry() is quite a different story. It feeds a deflated stream (either delta or base) and allows the stream to produce output up to what we expect but no more. do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); curpos += stream.next_in - in; } while (st == Z_OK || st == Z_BUF_ERROR) This _does_ risk falling into an endless interation, as we can exhaust avail_out if the length we expect is smaller than what the stream wants to produce (due to pack corruption). In such a case, avail_out will become zero and inflate() will return Z_BUF_ERROR, while avail_in may (or may not) be zero. But this is not a right fix: do { in = use_pack(); stream.next_in = in; st = git_inflate(&stream, Z_FINISH); + if (st == Z_BUF_ERROR && (stream.avail_in || !stream.avail_out) + break; /* wants more input??? */ curpos += stream.next_in - in; } while (st == Z_OK || st == Z_BUF_ERROR) as Z_BUF_ERROR from inflate() may be telling us that avail_in has also run out before reading the end of stream marker. In such a case, both avail_in and avail_out would be zero, and the loop should iterate to allow the end of stream marker to be seen by inflate from the input stream. The right fix for this loop is likely to be to increment the initial avail_out by one (we allocate one extra byte to terminate it with NUL anyway, so there is no risk to overrun the buffer), and break out if we see that avail_out has become zero, in order to detect that the stream wants to produce more than what we expect. After the loop, we have a check that exactly tests this condition: if ((st != Z_STREAM_END) || stream.total_out != size) { free(buffer); return NULL; } So here is a patch (without my previous botched attempts) to fix this issue. The first hunk reverts the corresponding hunk from b3118bd, and the second hunk is the same fix proposed earlier. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21Merge branch 'maint'Libravatar Junio C Hamano3-35/+14
* maint: Document `delta` attribute in "git help attributes". Mark files in t/t5100 as UTF-8 Remove a left-over file from t/t5100
2009-10-21Merge branch 'gb/maint-gitweb-esc-param'Libravatar Junio C Hamano1-2/+1
* gb/maint-gitweb-esc-param: gitweb: fix esc_param
2009-10-21git-clone.txt: Fix grammar and formattingLibravatar Björn Gustavsson1-13/+13
Add the missing definite article ("the") in several places. Change "note to..." to "note for...", since "note to" means that that the note is addressed to someone (source: Google search). Change "progressbar" to "progress bar" (source: Wikipedia). Format git commands, options, and file names consistently using back quotes (i.e. a fixed font in the resulting HTML document). Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21import-tars: Add support for tarballs compressed with lzma, xzLibravatar Ingmar Vanhassel1-1/+4
Also handle the extensions .tlz and .txz, aliases for .tar.lzma and .tar.xz respectively. Signed-off-by: Ingmar Vanhassel <ingmar@exherbo.org> Liked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21receive-pack: run "gc --auto --quiet" and optionally "update-server-info"Libravatar Junio C Hamano2-0/+29
Introduce two new configuration variables, receive.autogc (defaults to true) and receive.updateserverinfo (defaults to false). When these are set, receive-pack runs "gc --auto --quiet" and "update-server-info" respectively after it finishes receiving data from "git push" and updating refs. Signed-off-by: Junio C Hamano <gitster@pobox.com> Acked-by: Nicolas Pitre <nico@fluxnic.net>
2009-10-21gc --auto --quiet: make the notice a bit less verboaseLibravatar Junio C Hamano1-4/+7
When "gc --auto --quiet" decides there is something to do, it tells the user what it is doing, as it is going to make the user wait for a bit. But the message was a bit too long. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21Document `delta` attribute in "git help attributes".Libravatar Nasser Grainawi1-0/+10
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21Mark files in t/t5100 as UTF-8Libravatar Johannes Sixt1-0/+4
This enables gitk to show the patch text with correct glyphs if the locale is not UTF-8. Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-21Remove a left-over file from t/t5100Libravatar Johannes Sixt1-35/+0
This mbox file must have been added by accident in e9fe804 (git-mailinfo: Fix getting the subject from the in-body [PATCH] line, 2008-07-14). Signed-off-by: Johannes Sixt <j6t@kdbg.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-20fsck: default to "git fsck --full"Libravatar Junio C Hamano3-3/+15
Linus and other git developers from the early days trained their fingers to type the command, every once in a while even without thinking, to check the consistency of the repository back when the lower core part of the git was still being developed. Developers who wanted to make sure that git correctly dealt with packfiles could deliberately trigger their creation and checked them after they were created carefully, but loose objects are the ones that are written by various commands from random codepaths. It made some technical sense to have a mode that checked only loose objects from the debugging point of view for that reason. Even for git developers, there no longer is any reason to type "git fsck" every five minutes these days, worried that some newly created objects might be corrupt due to recent change to git. The reason we did not make "--full" the default is probably we trust our filesystems a bit too much. At least, we trusted filesystems more than we trusted the lower core part of git that was under development. Once a packfile is created and we always use it read-only, there didn't seem to be much point in suspecting that the underlying filesystems or disks may corrupt them in such a way that is not caught by the SHA-1 checksum over the entire packfile and per object checksum. That trust in the filesystems might have been a good tradeoff between fsck performance and reliability on platforms git was initially developed on and for, but it may not be true anymore as we run on many more platforms these days. Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-20Merge branch 'maint'Libravatar Junio C Hamano1-1/+1
* maint: Documentation/git-gc.txt: change "references" to "reference"
2009-10-20gitweb: linkify author/committer names with searchLibravatar Stephen Boyd2-5/+39
It's nice to search for an author by merely clicking on their name in gitweb. This is usually faster than selecting the name, copying the selection, pasting it into the search box, selecting between author/committer and then hitting enter. Linkify the avatar icon in log/shortlog view because the icon is directly adjacent to the name and thus more related. The same is not true when in commit/tag view where the icon is farther away. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-20Documentation/git-gc.txt: change "references" to "reference"Libravatar Matt Kraai1-1/+1
Signed-off-by: Matt Kraai <kraai@ftbfs.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-19Merge branch 'bg/rebase-reword'Libravatar Junio C Hamano4-6/+32
* bg/rebase-reword: rebase -i: fix reword when using a terminal editor Teach 'rebase -i' the command "reword"
2009-10-19rebase -i: fix reword when using a terminal editorLibravatar Stephen Boyd1-1/+1
We don't want to use output() on git-commit --amend when rewording the commit message. This leads to confusion as the editor is run in a subshell with it's output saved away, leaving the user with a seemingly frozen terminal. Fix by removing the output part. Signed-off-by: Stephen Boyd <bebarino@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-19format_commit_message(): fix function signatureLibravatar Junio C Hamano2-2/+2
The format template string was declared as "const void *" for some unknown reason, even though it obviously is meant to be passed a string. Make it "const char *". Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-19cvsimport: fix relative argument filenamesLibravatar Jeff King1-3/+14
One of the first things that cvsimport does is chdir to the newly created git repo. This means that any filenames given to us on the command line will be looked up relative to the git repo directory. This is probably not what the user expects, so let's remember and prepend the original directory for relative filenames. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-10-18Merge branch 'jp/maint-send-email-fold'Libravatar Junio C Hamano2-22/+78
* jp/maint-send-email-fold: git-send-email.perl: fold multiple entry "Cc:" and multiple single line "RCPT TO:"s
2009-10-18Merge branch 'cc/replace-no-replace'Libravatar Junio C Hamano4-2/+36
* cc/replace-no-replace: git: add --no-replace-objects option to disable replacing
2009-10-18Merge branch 'jn/maint-1.6.3-check-ref-format-doc'Libravatar Junio C Hamano1-3/+6
* jn/maint-1.6.3-check-ref-format-doc: Documentation: describe check-ref-format --branch
2009-10-18Merge branch 'jk/maint-1.6.3-ls-files-no-ignore-cached'Libravatar Junio C Hamano2-8/+32
* jk/maint-1.6.3-ls-files-no-ignore-cached: ls-files: excludes should not impact tracked files