Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: v1.5.6.1

Jun 26, 2008

  1. Junio C Hamano

    GIT 1.5.6.1

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 25, 2008

Jun 25, 2008

  1. Dmitry Potapov

    fix update-hook-example to work with packed tag references

    The update-hook-example used 'test -f' to check the tag present, which
    does not work if the checked reference is packed. This check has been
    changed to use 'git rev-parse $tag' instead.
    
    Signed-off-by: Dmitry Potapov <dpotapov@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 25, 2008 gitster committed June 25, 2008
  2. Jeff King

    clone: create intermediate directories of destination repo

    The shell version used to use "mkdir -p" to create the repo
    path, but the C version just calls "mkdir". Let's replicate
    the old behavior. We have to create the git and worktree
    leading dirs separately; while most of the time, the
    worktree dir contains the git dir (as .git), the user can
    override this using GIT_WORK_TREE.
    
    We can reuse safe_create_leading_directories, but we need to
    make a copy of our const buffer to do so. Since
    merge-recursive uses the same pattern, we can factor this
    out into a global function. This has two other cleanup
    advantages for merge-recursive:
    
      1. mkdir_p wasn't a very good name. "mkdir -p foo/bar" actually
         creates bar, but this function just creates the leading
         directories.
    
      2. mkdir_p took a mode argument, but it was completely
         ignored.
    
    Acked-by: Daniel Barkalow <barkalow@iabervon.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 25, 2008 gitster committed June 25, 2008
  3. Junio C Hamano

    Merge branch 'jc/maint-combine-diff-pre-context' into maint

    * jc/maint-combine-diff-pre-context:
      diff -c/--cc: do not include uninteresting deletion before leading context
    authored June 25, 2008
  4. Junio C Hamano

    Merge branch 'lt/maint-gitdir-relative' into maint

    * lt/maint-gitdir-relative:
      Make git_dir a path relative to work_tree in setup_work_tree()
    authored June 25, 2008
  5. Junio C Hamano

    Merge branch 'sb/maint-rebase' into maint

    * sb/maint-rebase:
      git-rebase.sh: Add check if rebase is in progress
    authored June 25, 2008
  6. Jeff King

    for-each-ref: implement missing tag values

    The "type" and "object" fields for tags were accepted as
    valid atoms, but never implemented. Consequently, they
    simply returned the empty string, even for valid tags.
    
    Noticed by Lea Wiemann.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 25, 2008 gitster committed June 25, 2008

Jun 24, 2008

  1. Jan Krüger

    git-svn: make rebuild respect rewriteRoot option

    Suppose someone fetches git-svn-ified commits from another repo and then
    attempts to use 'git-svn init --rewrite-root=foo bar'. Using git svn rebase
    after that will fail badly:
    
     * For each commit tried by working_head_info, rebuild is called indirectly.
     * rebuild will iterate over all commits and skip all of them because the
       URL does not match. Because of that no rev_map file is generated at all.
     * Thus, rebuild will run once for every commit. This takes ages.
     * In the end there still isn't any rev_map file and thus working_head_info
       fails.
    
    Addressing this behaviour fixes an apparently not too uncommon problem with
    providing git-svn mirrors of Subversion repositories. Some repositories are
    accessed using different URLs depending on whether the user has push
    privileges or not. In the latter case, an anonymous URL is often used that
    differs from the push URL. Providing a mirror that is usable in both cases
    becomes a lot more possible with this change.
    
    Signed-off-by: Jan Krüger <jk@jk.gs>
    Acked-by: Eric Wong <normalperson@yhbt.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 24, 2008 gitster committed June 23, 2008

Jun 23, 2008

  1. Workaround for AIX mkstemp()

    The AIX mkstemp will modify it's template parameter to an empty string if
    the call fails. This caused a subsequent mkdir to fail.
    
    Signed-off-by: Patrick Higgins <patrick.higgins@cexp.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 23, 2008 gitster committed June 23, 2008
  2. Stephan Beyer

    Extend parse-options test suite

    This patch serves two purposes:
     1. test-parse-option.c should be a more complete
        example for the parse-options API, and
     2. there have been no tests for OPT_CALLBACK,
        OPT_DATE, OPT_BIT, OPT_SET_INT and OPT_SET_PTR
        before.
    
    Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 22, 2008 gitster committed June 22, 2008
  3. Stephan Beyer

    api-parse-options.txt: Introduce documentation for parse options API

    Add some documentation of basics, macros and callback
    implementation of the parse-options API.
    
    Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 22, 2008 gitster committed June 22, 2008
  4. parse-options.c: fix documentation syntax of optional arguments

    When an argument for an option is optional, short options don't need a
    space between the option and the argument, and long options need a "=".
    Otherwise, arguments are misinterpreted.
    
    Signed-off-by: Michele Ballabio <barra_cuda@katamail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 22, 2008 gitster committed June 22, 2008
  5. Stephan Beyer

    api-builtin.txt: update and fix typo

    Mention NEED_WORK_TREE flag and command-list.txt.
    Fix "bulit-in" typo and AsciiDoc-formatting of a paragraph.
    
    Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 22, 2008 gitster committed June 22, 2008
  6. Stephan Beyer

    git-rebase.sh: Add check if rebase is in progress

    "git rebase --continue" and friends gave nonsense errors when there is no
    rebase in progress.
    
    Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 22, 2008 gitster committed June 22, 2008

Jun 19, 2008

  1. Linus Torvalds

    Make git_dir a path relative to work_tree in setup_work_tree()

    Once we find the absolute paths for git_dir and work_tree, we can make
    git_dir a relative path since we know pwd will be work_tree. This should
    save the kernel some time traversing the path to work_tree all the time
    if git_dir is inside work_tree.
    
    Daniel's patch didn't apply for me as-is, so I recreated it with some
    differences, and here are the numbers from ten runs each.
    
    There is some IO for me - probably due to more-or-less random flushing of
    the journal - so the variation is bigger than I'd like, but whatever:
    
    	Before:
    		real    0m8.135s
    		real    0m7.933s
    		real    0m8.080s
    		real    0m7.954s
    		real    0m7.949s
    		real    0m8.112s
    		real    0m7.934s
    		real    0m8.059s
    		real    0m7.979s
    		real    0m8.038s
    
    	After:
    		real    0m7.685s
    		real    0m7.968s
    		real    0m7.703s
    		real    0m7.850s
    		real    0m7.995s
    		real    0m7.817s
    		real    0m7.963s
    		real    0m7.955s
    		real    0m7.848s
    		real    0m7.969s
    
    Now, going by "best of ten" (on the assumption that the longer numbers
    are all due to IO), I'm saying a 7.933s -> 7.685s reduction, and it does
    seem to be outside of the noise (ie the "after" case never broke 8s, while
    the "before" case did so half the time).
    
    So looks like about 3% to me.
    
    Doing it for a slightly smaller test-case (just the "arch" subdirectory)
    gets more stable numbers probably due to not filling the journal with
    metadata updates, so we have:
    
    	Before:
    		real    0m1.633s
    		real    0m1.633s
    		real    0m1.633s
    		real    0m1.632s
    		real    0m1.632s
    		real    0m1.630s
    		real    0m1.634s
    		real    0m1.631s
    		real    0m1.632s
    		real    0m1.632s
    
    	After:
    		real    0m1.610s
    		real    0m1.609s
    		real    0m1.610s
    		real    0m1.608s
    		real    0m1.607s
    		real    0m1.610s
    		real    0m1.609s
    		real    0m1.611s
    		real    0m1.608s
    		real    0m1.611s
    
    where I'ld just take the averages and say 1.632 vs 1.610, which is just
    over 1% peformance improvement.
    
    So it's not in the noise, but it's not as big as I initially thought and
    measured.
    
    (That said, it obviously depends on how deep the working directory path is
    too, and whether it is behind NFS or something else that might need to
    cause more work to look up).
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 19, 2008 gitster committed June 19, 2008
  2. Jan Krüger

    Documentation: fix formatting in git-svn

    Due to a misplaced list block separator, general hints about the config
    file options got indented at the same level as the description of the last
    option, making it easy to miss them.
    
    Signed-off-by: Jan Krüger <jk@jk.gs>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 20, 2008 gitster committed June 19, 2008
  3. t7502-commit.sh: test_must_fail doesn't work with inline environment …

    …variables
    
    When the arguments to test_must_fail() begin with a variable assignment,
    test_must_fail() attempts to execute the variable assignment as a command.
    This fails, and so test_must_fail returns with a successful status value
    without running the command it was intended to test.
    
    For example, the following script:
    
    	#!/bin/sh
    	test_must_fail () {
    		"$@"
    		test $? -gt 0 -a $? -le 129
    	}
    	foo='wo adrian'
    	test_must_fail foo='yo adrian' sh -c 'echo foo: $foo'
    
    always exits zero and prints the message:
    
    	test.sh: line 3: foo=yo adrian: command not found
    
    Test 16 calls test_must_fail in such a way and therefore has not been
    testing whether git 'do[es] not fire editor in the presence of conflicts'.
    
    A workaround is to set and export the variable in a normal way, not
    using one-shot notation.  Because this would affect the remainder of
    the process, the test is done inside a subshell.
    
    Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 19, 2008 gitster committed June 19, 2008
  4. Dan McGee

    completion: add --graph to log command completion

    Signed-off-by: Dan McGee <dpmcgee@gmail.com>
    Acked-by: Shawn O. Pearce <spearce@spearce.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 19, 2008 gitster committed June 19, 2008
  5. git-merge.sh: fix typo in usage message: sucesses --> succeeds

    Signed-off-by: Brandon Casey <casey@nrlssc.navy.mil>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 18, 2008 gitster committed June 19, 2008
  6. Junio C Hamano

    diff -c/--cc: do not include uninteresting deletion before leading co…

    …ntext
    
    When we include a few uninteresting lines before the interesting ones as
    context, we are only interested in seeing the surviving lines themselves
    and not the deleted lines that are before them.  Mark the added leading
    context lines in give_context() and not show deleted lines form them.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 18, 2008

Jun 18, 2008

  1. Junio C Hamano

    GIT 1.5.6

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 18, 2008
  2. Jeff King

    clean up error conventions of remote.c:match_explicit

    match_explicit is called for each push refspec to try to
    fully resolve the source and destination sides of the
    refspec.  Currently, we look at each refspec and report
    errors on both the source and the dest side before aborting.
    
    It makes sense to report errors for each refspec, since an
    error in one is independent of an error in the other.
    However, reporting errors on the 'dst' side of a refspec if
    there has been an error on the 'src' side does not
    necessarily make sense, since the interpretation of the
    'dst' side depends on the 'src' side (for example, when
    creating a new unqualified remote ref, we use the same type
    as the src ref).
    
    This patch lets match_explicit return early when the src
    side of the refspec is bogus. We still look at all of the
    refspecs before aborting the push, though.
    
    At the same time, we clean up the call signature, which
    previously took an extra "errs" flag. This was pointless, as
    we didn't act on that flag, but rather just passed it back
    to the caller. Instead, we now use the more traditional
    "return -1" to signal an error, and the caller aggregates
    the error count.
    
    This change fixes two bugs, as well:
    
      - the early return avoids a segfault when passing a NULL
        matched_src to guess_ref()
    
      - the check for multiple sources pointing to a single dest
        aborted if the "err" flag was set. Presumably the intent
        was not to bother with the check if we had no
        matched_src. However, since the err flag was passed in
        from the caller, we might abort the check just because a
        previous refspec had a problem, which doesn't make
        sense.
    
        In practice, this didn't matter, since due to the error
        flag we end up aborting the push anyway.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 16, 2008 gitster committed June 18, 2008

Jun 17, 2008

  1. Fix approxidate("never") to always return 0

    Commit af66366 introduced the keyword
    "never" to be used with approxidate() but defined it with a fixed date
    without taking care of timezone. As a result approxidate() will return
    a timestamp in the future with a negative timezone.
    
    With this patch, approxidate("never") always return 0 whatever your
    timezone is.
    
    Signed-off-by: Olivier Marin <dkr@freesurf.fr>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 17, 2008 gitster committed June 17, 2008
  2. Alejandro Mery

    git-am: head -1 is obsolete and doesn't work on some new systems

    head -<n> was deprecated by POSIX, and as modern versions of coreutils
    package don't support it at least one exports _POSIX2_VERSION=199209
    it's fails on some systems.
    
    head -n<n> is portable, but sed <n>q is even more.
    
    Signed-off-by: Alejandro Mery <amery@geeks.cl>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 17, 2008 gitster committed June 17, 2008
  3. builtin-rerere: fix a small leak

    The data read from MERGE_RR file is kept in path-list by hanging textual
    40-byte conflict signature to path of the blob that contains the
    conflict.  The signature is strdup'ed twice, and the second copy is given
    to the path-list, leaking the first copy.
    
    Signed-off-by: Junio C Hamano <junio@pobox.com>
    Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
    authored June 17, 2008 gitster committed June 17, 2008
  4. gitweb: remove unused parse_ref method

    The parse_ref method became unused in cd14640, but the author
    decided to leave it in.  Now it gets in the way of refactoring, so
    let's remove it.
    
    Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 17, 2008 gitster committed June 17, 2008
  5. gitweb: quote commands properly when calling the shell

    This eliminates the function git_cmd_str, which was used for composing
    command lines, and adds a quote_command function, which quotes all of
    its arguments (as in quote.c).
    
    Signed-off-by: Lea Wiemann <LeWiemann@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 17, 2008 gitster committed June 17, 2008
  6. Junio C Hamano

    sha1_file.c: simplify parse_pack_index()

    It was implemented as a thin wrapper around an otherwise unused
    helper function parse_pack_index_file().  The code becomes simpler
    and easier to read by consolidating the two.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 16, 2008
  7. Junio C Hamano

    create_tempfile: make sure that leading directories can be accessible…

    … by peers
    
    In a shared repository, we should make sure adjust_shared_perm() is called
    after creating the initial fan-out directories under objects/ directory.
    
    Earlier an logico called the function only when mkdir() failed; we should
    do so when mkdir() succeeded.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 16, 2008
  8. Linus Torvalds

    write_loose_object: don't bother trying to read an old object

    Before even calling this, all callers have done a "has_sha1_file(sha1)"
    or "has_loose_object(sha1)" check, so there is no point in doing a
    second check.
    
    If something races with us on object creation, we handle that in the
    final link() that moves it to the right place.
    
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 16, 2008 gitster committed June 16, 2008
  9. Miklos Vajna

    path-list documentation: document all functions and data structures

    Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 15, 2008 gitster committed June 16, 2008
  10. Miklos Vajna

    run-command documentation: fix "memset()" parameter

    When initializing the struct async and struct child_process structures,
    the documentation suggested "clearing" the structure with '0' instead of
    '\0'.  It is enough to use integer zero here.
    
    Signed-off-by: Miklos Vajna <vmiklos@frugalware.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 14, 2008 gitster committed June 16, 2008
  11. Junio C Hamano

    Merge branch 'maint'

    * maint:
      diff.c: fix emit_line() again not to add extra line
    authored June 16, 2008
  12. Junio C Hamano

    diff.c: fix emit_line() again not to add extra line

    Signed-off-by: Junio C Hamano <gitster@pobox.com>
    authored June 16, 2008

Jun 16, 2008

  1. Junio C Hamano

    Merge branch 'maint'

    * maint:
      diff: reset color before printing newline
    authored June 16, 2008
Something went wrong with that request. Please try again.