Permalink
Commits on Jan 20, 2010
  1. Git 1.6.5.8

    gitster committed Jan 20, 2010
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. Merge branch 'jk/maint-1.6.5-reset-hard' into maint-1.6.5

    gitster committed Jan 20, 2010
    * jk/maint-1.6.5-reset-hard:
      reset: unbreak hard resets with GIT_WORK_TREE
  3. Merge branch 'tr/maint-1.6.5-bash-prompt-show-submodule-changes' into…

    gitster committed Jan 20, 2010
    … maint-1.6.5
    
    * tr/maint-1.6.5-bash-prompt-show-submodule-changes:
      bash completion: factor submodules into dirty state
  4. Merge branch 'dp/maint-1.6.5-fast-import-non-commit-tag' into maint-1…

    gitster committed Jan 20, 2010
    ….6.5
    
    * dp/maint-1.6.5-fast-import-non-commit-tag:
      fast-import: tag may point to any object type
  5. Merge branch 'jm/maint-1.6.5-grep-NUL-terminate' into maint-1.6.5

    gitster committed Jan 20, 2010
    * jm/maint-1.6.5-grep-NUL-terminate:
      grep: NUL terminate input from a file
Commits on Jan 19, 2010
  1. Merge branch 'maint-1.6.4' into maint-1.6.5

    gitster committed Jan 19, 2010
    * maint-1.6.4:
      Fix mis-backport of t7002
      base85: Make the code more obvious instead of explaining the non-obvious
      base85: encode_85() does not use the decode table
      base85 debug code: Fix length byte calculation
      checkout -m: do not try to fall back to --merge from an unborn branch
      branch: die explicitly why when calling "git branch [-a|-r] branchname".
      textconv: stop leaking file descriptors
      commit: --cleanup is a message option
      git count-objects: handle packs bigger than 4G
      t7102: make the test fail if one of its check fails
  2. Merge branch 'maint-1.6.3' into maint-1.6.4

    gitster committed Jan 19, 2010
    * maint-1.6.3:
      base85: Make the code more obvious instead of explaining the non-obvious
      base85: encode_85() does not use the decode table
      base85 debug code: Fix length byte calculation
      checkout -m: do not try to fall back to --merge from an unborn branch
      branch: die explicitly why when calling "git branch [-a|-r] branchname".
      textconv: stop leaking file descriptors
      commit: --cleanup is a message option
      git count-objects: handle packs bigger than 4G
      t7102: make the test fail if one of its check fails
    
    Conflicts:
    	builtin-commit.c
  3. Merge branch 'maint-1.6.2' into maint-1.6.3

    gitster committed Jan 19, 2010
    * maint-1.6.2:
      base85: Make the code more obvious instead of explaining the non-obvious
      base85: encode_85() does not use the decode table
      base85 debug code: Fix length byte calculation
      checkout -m: do not try to fall back to --merge from an unborn branch
      branch: die explicitly why when calling "git branch [-a|-r] branchname".
      textconv: stop leaking file descriptors
      commit: --cleanup is a message option
      git count-objects: handle packs bigger than 4G
      t7102: make the test fail if one of its check fails
    
    Conflicts:
    	diff.c
  4. Merge commit 'v1.6.4.4-8-g8de6518' into maint-1.6.4

    gitster committed Jan 19, 2010
    * commit 'v1.6.4.4-8-g8de6518':
      Fix mis-backport of t7002
  5. Fix mis-backport of t7002

    gitster committed Jan 19, 2010
    The original patch that became cfe370c (grep: do not segfault when -f is
    used, 2009-10-16), was made against "maint" or newer branch back then, but
    the fix addressed the issue that was present as far as in 1.6.4 series.
    
    The maintainer backported the patch to the 1.6.4 maintenance branch, but
    failed to notice that the new tests assumed the setup done by the script
    in "maint", which did quite a lot more than the same test script in 1.6.4
    series, and the output didn't match the expected result.
    
    This should fix it.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. grep: NUL terminate input from a file

    meyering authored and gitster committed Jan 18, 2010
    Internally "git grep" runs regexec(3) that expects its input string
    to be NUL terminated.  When searching inside blob data, read_sha1_file()
    automatically gives such a buffer, but builtin-grep.c forgot to put
    the NUL at the end, even though it allocated enough space for it.
    
    Signed-off-by: Jim Meyering <meyering@redhat.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 15, 2010
  1. fast-import: tag may point to any object type

    dmpot authored and gitster committed Jan 14, 2010
    If you tried to export the official git repository, and then to import it
    back then git-fast-import would die complaining that "Mark :1 not a commit".
    
    Accordingly to a generated crash file, Mark 1 is not a commit but a blob,
    which is pointed by junio-gpg-pub tag. Because git-tag allows to create such
    tags, git-fast-import should import them.
    
    Signed-off-by: Dmitry Potapov <dpotapov@gmail.com>
    Acked-by: Shawn O. Pearce <spearce@spearce.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 10, 2010
  1. Merge branch 'maint-1.6.1' into maint-1.6.2

    gitster committed Jan 10, 2010
    * maint-1.6.1:
      base85: Make the code more obvious instead of explaining the non-obvious
      base85: encode_85() does not use the decode table
      base85 debug code: Fix length byte calculation
      checkout -m: do not try to fall back to --merge from an unborn branch
      branch: die explicitly why when calling "git branch [-a|-r] branchname".
      textconv: stop leaking file descriptors
      commit: --cleanup is a message option
      git count-objects: handle packs bigger than 4G
      t7102: make the test fail if one of its check fails
    
    Conflicts:
    	diff.c
  2. Merge branch 'maint-1.6.0' into maint-1.6.1

    gitster committed Jan 10, 2010
    * maint-1.6.0:
      base85: Make the code more obvious instead of explaining the non-obvious
      base85: encode_85() does not use the decode table
      base85 debug code: Fix length byte calculation
      checkout -m: do not try to fall back to --merge from an unborn branch
      branch: die explicitly why when calling "git branch [-a|-r] branchname".
  3. base85: Make the code more obvious instead of explaining the non-obvious

    Andreas Gruenbacher authored and gitster committed Jan 8, 2010
    Here is another cleanup ...
    
    Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. base85: encode_85() does not use the decode table

    Andreas Gruenbacher authored and gitster committed Jan 8, 2010
    Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  5. base85 debug code: Fix length byte calculation

    Andreas Gruenbacher authored and gitster committed Jan 8, 2010
    Signed-off-by: Andreas Gruenbacher <agruen@suse.de>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Jan 7, 2010
  1. checkout -m: do not try to fall back to --merge from an unborn branch

    gitster committed Jan 7, 2010
    If switching from an unborn branch (= empty tree) to a valid commit failed
    without -m, it would fail with -m option as well.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 31, 2009
  1. branch: die explicitly why when calling "git branch [-a|-r] branchname".

    moy authored and gitster committed Dec 30, 2009
    The -a and -r options used to be silently ignored in such a command.
    
    Signed-off-by: Matthieu Moy <Matthieu.Moy@imag.fr>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. bash completion: factor submodules into dirty state

    trast authored and gitster committed Dec 31, 2009
    In the implementation of GIT_PS1_SHOWDIRTYSTATE in 738a94a (bash:
    offer to show (un)staged changes, 2009-02-03), I cut&pasted the
    git-diff invocations from dirty-worktree checks elsewhere, carrying
    along the --ignore-submodules option.
    
    As pointed out by Kevin Ballard, this doesn't really make sense: to
    the _user_, a changed submodule counts towards uncommitted changes.
    
    Signed-off-by: Thomas Rast <trast@student.ethz.ch>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 30, 2009
  1. textconv: stop leaking file descriptors

    peff authored and gitster committed Dec 30, 2009
    We read the output from textconv helpers over a pipe, but we
    never actually closed our end of the pipe after using it.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. reset: unbreak hard resets with GIT_WORK_TREE

    peff authored and gitster committed Dec 30, 2009
    Commit 952dfc6 tried to tighten the safety valves for doing
    a "reset --hard" in a bare repository or outside the work
    tree, but accidentally broke the case for GIT_WORK_TREE.
    This patch unbreaks it.
    
    Most git commands which need a work tree simply use
    NEED_WORK_TREE in git.c to die before they get to their
    cmd_* function. Reset, however, only needs a work tree in
    some cases, and so must handle the work tree itself. The
    error that 952dfc6 made was to simply forbid certain
    operations if the work tree was not set up; instead, we need
    to do the same thing that NEED_WORK_TREE does, which is to
    call setup_work_tree(). We no longer have to worry about dying
    in the non-worktree case, as setup_work_tree handles that
    for us.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. Merge branch 'maint-1.6.0' into maint-1.6.1

    gitster committed Dec 30, 2009
    * maint-1.6.0:
      commit: --cleanup is a message option
      t7102: make the test fail if one of its check fails
  4. commit: --cleanup is a message option

    Greg Price authored and gitster committed Dec 29, 2009
    In the usage message for "git commit", the --cleanup option appeared
    at the end, as one of the "contents options":
    
    usage: git commit [options] [--] <filepattern>...
    ...
    Commit message options
    ...
    Commit contents options
    ...
        --allow-empty         ok to record an empty change
        --cleanup <default>   how to strip spaces and #comments from message
    
    This is confusing, in part because it makes it ambiguous whether
    --allow-empty, just above, refers to an empty diff or an empty message.
    
    Move --cleanup into the 'message options' group.  Also add a pair of
    comments to prevent similar oversights in the future.
    
    Signed-off-by: Greg Price <price@ksplice.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  5. git count-objects: handle packs bigger than 4G

    andreas-schwab authored and gitster committed Dec 29, 2009
    Use off_t to count sizes of packs and objects to avoid overflow after
    4Gb.
    
    Signed-off-by: Andreas Schwab <schwab@linux-m68k.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  6. t7102: make the test fail if one of its check fails

    pclouds authored and gitster committed Dec 29, 2009
    Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 22, 2009
  1. Prevent git blame from segfaulting on a missing author name

    David Reiss authored and gitster committed Dec 22, 2009
    The human-readable author and committer name can be missing from
    commits imported from foreign SCM interfaces.  Make sure we parse
    the "author" and "committer" line a bit more leniently and avoid
    segfaulting by assuming the name always exists.
    
    Signed-off-by: David Reiss <dreiss@facebook.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 20, 2009
  1. rebase -i: abort cleanly if the editor fails to launch

    bjorng authored and gitster committed Dec 19, 2009
    If the user's configured editor is emacsclient, the editor
    will fail to launch if emacs is not running and the git
    command that tried to lanuch the editor will abort. For most
    commands, all you have to do is to start emacs and repeat
    the command.
    
    The "git rebase -i" command, however, aborts without cleaning
    the "$GIT_DIR/rebase-merge" directory if it fails to launch the
    editor, so you'll need to do "git rebase --abort" before
    repeating the rebase command.
    
    Change "git rebase -i" to terminate using "die_abort" (instead of
    with "die") if the initial launch of the editor fails.
    
    Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 18, 2009
  1. technical-docs: document hash API

    bebarino authored and gitster committed Dec 18, 2009
    Signed-off-by: Stephen Boyd <bebarino@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. api-strbuf.txt: fix typos and document launch_editor()

    bebarino authored and gitster committed Dec 18, 2009
    Signed-off-by: Stephen Boyd <bebarino@gmail.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 16, 2009
  1. Git 1.6.5.7

    gitster committed Dec 16, 2009
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  2. worktree: don't segfault with an absolute pathspec without a work tree

    gitster committed Dec 16, 2009
    If a command is run with an absolute path as a pathspec inside a bare
    repository, e.g. "rev-list HEAD -- /home", the code tried to run strlen()
    on NULL, which is the result of get_git_work_tree(), and segfaulted.  It
    should just fail instead.
    
    Currently the function returns NULL even inside .git/ in a repository
    with a work tree, but that is a separate issue.
    
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  3. ignore unknown color configuration

    peff authored and gitster committed Dec 12, 2009
    When parsing the config file, if there is a value that is
    syntactically correct but unused, we generally ignore it.
    This lets non-core porcelains store arbitrary information in
    the config file, and it means that configuration files can
    be shared between new and old versions of git (the old
    versions might simply ignore certain configuration).
    
    The one exception to this is color configuration; if we
    encounter a color.{diff,branch,status}.$slot variable, we
    die if it is not one of the recognized slots (presumably as
    a safety valve for user misconfiguration). This behavior
    has existed since 801235c (diff --color: use
    $GIT_DIR/config, 2006-06-24), but hasn't yet caused a
    problem. No porcelain has wanted to store extra colors, and
    we once a color area (like color.diff) has been introduced,
    we've never changed the set of color slots.
    
    However, that changed recently with the addition of
    color.diff.func. Now a user with color.diff.func in their
    config can no longer freely switch between v1.6.6 and older
    versions; the old versions will complain about the existence
    of the variable.
    
    This patch loosens the check to match the rest of
    git-config; unknown color slots are simply ignored. This
    doesn't fix this particular problem, as the older version
    (without this patch) is the problem, but it at least
    prevents it from happening again in the future.
    
    Signed-off-by: Jeff King <peff@peff.net>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
  4. help.autocorrect: do not run a command if the command given is junk

    j6t authored and gitster committed Dec 15, 2009
    If a given command is not found, then help.c tries to guess which one the
    user could have meant. If help.autocorrect is 0 or unset, then a list of
    suggestions is given as long as the dissimilarity between the given command
    and the candidates is not excessively high. But if help.autocorrect was
    non-zero (i.e., a delay after which the command is run automatically), the
    latter restriction on dissimilarity was not obeyed.
    
    In my case, this happened:
    
     $ git ..daab02
     WARNING: You called a Git command named '..daab02', which does not exist.
     Continuing under the assumption that you meant 'read-tree'
     in 4.0 seconds automatically...
    
    The patch reuses the similarity limit that is also applied when the list of
    suggested commands is printed.
    
    Signed-off-by: Johannes Sixt <j6t@kdbg.org>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>
Commits on Dec 15, 2009
  1. Illustrate "filter" attribute with an example

    Nanako Shiraishi authored and gitster committed Dec 15, 2009
    The example was taken from aa4ed40
    (Add 'filter' attribute and external filter driver definition).
    
    Signed-off-by: Nanako Shiraishi <nanako3@lavabit.com>
    Signed-off-by: Junio C Hamano <gitster@pobox.com>