Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Jan 18, 2012
  1. @gitster

    Git 1.7.9-rc2

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. @gitster

    Merge branch 'maint'

    gitster authored
    * maint:
      Git 1.7.8.4
      Git 1.7.7.6
      diff-index: enable recursive pathspec matching in unpack_trees
    
    Conflicts:
    	GIT-VERSION-GEN
  3. @gitster

    Git 1.7.8.4

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. @gitster

    Merge branch 'maint-1.7.7' into maint

    gitster authored
    * maint-1.7.7:
      Git 1.7.7.6
      diff-index: enable recursive pathspec matching in unpack_trees
    
    Conflicts:
    	GIT-VERSION-GEN
  5. @gitster

    Git 1.7.7.6

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. @pclouds @gitster

    diff-index: enable recursive pathspec matching in unpack_trees

    pclouds authored gitster committed
    The pathspec structure has a few bits of data to drive various operation
    modes after we unified the pathspec matching logic in various codepaths.
    For example, max_depth field is there so that "git grep" can limit the
    output for files found in limited depth of tree traversal. Also in order
    to show just the surface level differences in "git diff-tree", recursive
    field stops us from descending into deeper level of the tree structure
    when it is set to false, and this also affects pathspec matching when
    we have wildcards in the pathspec.
    
    The diff-index has always wanted the recursive behaviour, and wanted to
    match pathspecs without any depth limit. But we forgot to do so when we
    updated tree_entry_interesting() logic to unify the pathspec matching
    logic.
    
    Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  7. @gitster

    Merge branch 'jc/pull-signed-tag-doc'

    gitster authored
    * jc/pull-signed-tag-doc:
      pulling signed tag: add howto document
  8. @gitster

    pulling signed tag: add howto document

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  9. @gitster

    Merge branch 'jk/credentials'

    gitster authored
    * jk/credentials:
      credential-cache: ignore "connection refused" errors
      unix-socket: do not let close() or chdir() clobber errno during cleanup
      credential-cache: report more daemon connection errors
      unix-socket: handle long socket pathnames
  10. @gitster

    Merge branch 'nd/pathspec-recursion-cleanup'

    gitster authored
    * nd/pathspec-recursion-cleanup:
      diff-index: enable recursive pathspec matching in unpack_trees
      Document limited recursion pathspec matching with wildcards
  11. @gitster

    Merge branch 'mh/maint-show-ref-doc'

    gitster authored
    * mh/maint-show-ref-doc:
      git-show-ref doc: typeset regexp in fixed width font
      git-show-ref: fix escaping in asciidoc source
  12. @gitster

    Merge branch 'tr/maint-word-diff-incomplete-line'

    gitster authored
    * tr/maint-word-diff-incomplete-line:
      word-diff: ignore '\ No newline at eof' marker
Commits on Jan 17, 2012
  1. @peff @gitster

    credential-cache: ignore "connection refused" errors

    peff authored gitster committed
    The credential-cache helper will try to connect to its
    daemon over a unix socket. Originally, a failure to do so
    was silently ignored, and we would either give up (if
    performing a "get" or "erase" operation), or spawn a new
    daemon (for a "store" operation).
    
    But since 8ec6c8d, we try to report more errors. We detect a
    missing daemon by checking for ENOENT on our connection
    attempt.  If the daemon is missing, we continue as before
    (giving up or spawning a new daemon). For any other error,
    we die and report the problem.
    
    However, checking for ENOENT is not sufficient for a missing
    daemon. We might also get ECONNREFUSED if a dead daemon
    process left a stale socket. This generally shouldn't
    happen, as the daemon cleans up after itself, but the daemon
    may not always be given a chance to do so (e.g., power loss,
    "kill -9").
    
    The resulting state is annoying not just because the helper
    outputs an extra useless message, but because it actually
    blocks the helper from spawning a new daemon to replace the
    stale socket.
    
    Fix it by checking for ECONNREFUSED.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. @gitster

    Merge branch 'jn/maint-gitweb-grep-fix'

    gitster authored
    * jn/maint-gitweb-grep-fix:
      gitweb: Harden "grep" search against filenames with ':'
      gitweb: Fix file links in "grep" search
Commits on Jan 16, 2012
  1. @pclouds @gitster

    diff-index: enable recursive pathspec matching in unpack_trees

    pclouds authored gitster committed
    The pathspec structure has a few bits of data to drive various operation
    modes after we unified the pathspec matching logic in various codepaths.
    For example, max_depth field is there so that "git grep" can limit the
    output for files found in limited depth of tree traversal. Also in order
    to show just the surface level differences in "git diff-tree", recursive
    field stops us from descending into deeper level of the tree structure
    when it is set to false, and this also affects pathspec matching when
    we have wildcards in the pathspec.
    
    The diff-index has always wanted the recursive behaviour, and wanted to
    match pathspecs without any depth limit. But we forgot to do so when we
    updated tree_entry_interesting() logic to unify the pathspec matching
    logic.
    
    Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 15, 2012
  1. @pclouds @gitster

    Document limited recursion pathspec matching with wildcards

    pclouds authored gitster committed
    It's actually unlimited recursion if wildcards are active regardless
    --max-depth
    
    Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 13, 2012
  1. @mhagger @gitster

    git-show-ref doc: typeset regexp in fixed width font

    mhagger authored gitster committed
    Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. @mhagger @gitster

    git-show-ref: fix escaping in asciidoc source

    mhagger authored gitster committed
    Two "^" characters were incorrectly being interpreted as markup for
    superscripting.  Fix them by writing them as attribute references
    "{caret}".
    
    Although a single "^" character in a paragraph cannot be
    misinterpreted in this way, also write other "^" characters as
    "{caret}" in the interest of good hygiene (unless they are in literal
    paragraphs, of course, in which context attribute references are not
    recognized).
    
    Spell "{}" consistently, namely *not* quoted as "\{\}".  Since the
    braces are empty, they cannot be interpreted as an attribute
    reference, and either spelling is OK.  So arbitrarily choose one
    variation and use it consistently.
    
    Signed-off-by: Michael Haggerty <mhagger@alum.mit.edu>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. @gitster

    Git 1.7.9-rc1

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. @gitster

    Merge branch 'jc/request-pull-show-head-4'

    gitster authored
    * jc/request-pull-show-head-4:
      request-pull: use the real fork point when preparing the message
  5. @gitster

    Merge branch 'tr/maint-mailinfo'

    gitster authored
    * tr/maint-mailinfo:
      mailinfo documentation: accurately describe non -k case
  6. @gitster

    Merge branch 'ss/maint-msys-cvsexportcommit'

    gitster authored
    * ss/maint-msys-cvsexportcommit:
      git-cvsexportcommit: Fix calling Perl's rel2abs() on MSYS
      t9200: On MSYS, do not pass Windows-style paths to CVS
  7. @gitster

    Merge branch 'jk/maint-upload-archive'

    gitster authored
    * jk/maint-upload-archive:
      archive: re-allow HEAD:Documentation on a remote invocation
  8. @gitster

    Merge branch 'maint'

    gitster authored
    * maint:
      Update draft release notes to 1.7.8.4
      Update draft release notes to 1.7.7.6
      Update draft release notes to 1.7.6.6
      thin-pack: try harder to use preferred base objects as base
  9. @gitster

    Update draft release notes to 1.7.8.4

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  10. @gitster

    Merge branch 'maint-1.7.7' into maint

    gitster authored
    * maint-1.7.7:
      Update draft release notes to 1.7.7.6
      Update draft release notes to 1.7.6.6
      thin-pack: try harder to use preferred base objects as base
  11. @gitster

    Update draft release notes to 1.7.7.6

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  12. @gitster

    Merge branch 'maint-1.7.6' into maint-1.7.7

    gitster authored
    * maint-1.7.6:
      Update draft release notes to 1.7.6.6
      thin-pack: try harder to use preferred base objects as base
  13. @gitster

    Update draft release notes to 1.7.6.6

    gitster authored
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  14. @peff @gitster

    thin-pack: try harder to use preferred base objects as base

    peff authored gitster committed
    When creating a pack using objects that reside in existing packs, we try
    to avoid recomputing futile delta between an object (trg) and a candidate
    for its base object (src) if they are stored in the same packfile, and trg
    is not recorded as a delta already. This heuristics makes sense because it
    is likely that we tried to express trg as a delta based on src but it did
    not produce a good delta when we created the existing pack.
    
    As the pack heuristics prefer producing delta to remove data, and Linus's
    law dictates that the size of a file grows over time, we tend to record
    the newest version of the file as inflated, and older ones as delta
    against it.
    
    When creating a thin-pack to transfer recent history, it is likely that we
    will try to send an object that is recorded in full, as it is newer.  But
    the heuristics to avoid recomputing futile delta effectively forbids us
    from attempting to express such an object as a delta based on another
    object. Sending an object in full is often more expensive than sending a
    suboptimal delta based on other objects, and it is even more so if we
    could use an object we know the receiving end already has (i.e. preferred
    base object) as the delta base.
    
    Tweak the recomputation avoidance logic, so that we do not punt on
    computing delta against a preferred base object.
    
    The effect of this change can be seen on two simulated upload-pack
    workloads. The first is based on 44 reflog entries from my git.git
    origin/master reflog, and represents the packs that kernel.org sent me git
    updates for the past month or two. The second workload represents much
    larger fetches, going from git's v1.0.0 tag to v1.1.0, then v1.1.0 to
    v1.2.0, and so on.
    
    The table below shows the average generated pack size and the average CPU
    time consumed for each dataset, both before and after the patch:
    
                      dataset
                | reflog | tags
    ---------------------------------
         before | 53358  | 2750977
    size  after | 32398  | 2668479
         change |   -39% |      -3%
    ---------------------------------
         before |  0.18  | 1.12
    CPU   after |  0.18  | 1.15
         change |    +0% |      +3%
    
    This patch makes a much bigger difference for packs with a shorter slice
    of history (since its effect is seen at the boundaries of the pack) though
    it has some benefit even for larger packs.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Acked-by: Nicolas Pitre <nico@fluxnic.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 12, 2012
  1. @trast @gitster

    word-diff: ignore '\ No newline at eof' marker

    trast authored gitster committed
    The word-diff logic accumulates + and - lines until another line type
    appears (normally [ @\]), at which point it generates the word diff.
    This is usually correct, but it breaks when the preimage does not have
    a newline at EOF:
    
      $ printf "%s" "a a a" >a
      $ printf "%s\n" "a ab a" >b
      $ git diff --no-index --word-diff a b
      diff --git 1/a 2/b
      index 9f68e94..6a7c02f 100644
      --- 1/a
      +++ 2/b
      @@ -1 +1 @@
      [-a a a-]
       No newline at end of file
      {+a ab a+}
    
    Because of the order of the lines in a unified diff
    
      @@ -1 +1 @@
      -a a a
      \ No newline at end of file
      +a ab a
    
    the '\' line flushed the buffers, and the - and + lines were never
    matched with each other.
    
    A proper fix would defer such markers until the end of the hunk.
    However, word-diff is inherently whitespace-ignoring, so as a cheap
    fix simply ignore the marker (and hide it from the output).
    
    We use a prefix match for '\ ' to parallel the logic in
    apply.c:parse_fragment().  We currently do not localize this string
    (just accept other variants of it in git-apply), but this should be
    future-proof.
    
    Noticed-by: Ivan Shirokoff <shirokoff@yandex-team.ru>
    Signed-off-by: Thomas Rast <trast@student.ethz.ch>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. @carlosmn @gitster

    archive: re-allow HEAD:Documentation on a remote invocation

    carlosmn authored gitster committed
    The tightening done in (ee27ca4: archive: don't let remote clients
    get unreachable commits, 2011-11-17) went too far and disallowed
    HEAD:Documentation as it would try to find "HEAD:Documentation" as a
    ref.
    
    Only DWIM the "HEAD" part to see if it exists as a ref. Once we're
    sure that we've been given a valid ref, we follow the normal code
    path. This still disallows attempts to access commits which are not
    branch tips.
    
    Signed-off-by: Carlos Martín Nieto <cmn@elego.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. @gitster

    Merge branch 'maint'

    gitster authored
    * maint:
      attr: fix leak in free_attr_elem
      t2203: fix wrong commit command
  4. @gitster

    Merge branch 'maint-1.7.7' into maint

    gitster authored
    * maint-1.7.7:
      attr: fix leak in free_attr_elem
      t2203: fix wrong commit command
  5. @gitster

    Merge branch 'maint-1.7.6' into maint-1.7.7

    gitster authored
    * maint-1.7.6:
      attr: fix leak in free_attr_elem
      t2203: fix wrong commit command
Something went wrong with that request. Please try again.