Skip to content
Commits on Jul 7, 2010
  1. @gitster

    setup_revisions(): Allow walking history in a submodule

    By passing the path to a submodule in opt->submodule, the function can
    be used to walk history in the named submodule repository, instead of
    the toplevel repository.
    Signed-off-by: Heiko Voigt <>
    Signed-off-by: Junio C Hamano <>
    Heiko Voigt committed with gitster Jul 7, 2010
Commits on Jun 12, 2010
  1. @trast @gitster

    log_ref_setup: don't return stack-allocated array

    859c301 (refs: split log_ref_write logic into log_ref_setup,
    2010-05-21) refactors the stack allocation of the log_file array into
    the new log_ref_setup() function, but passes it back to the caller.
    Since the original intent seems to have been to split the work between
    log_ref_setup and log_ref_write, make it the caller's responsibility
    to allocate the buffer.
    Signed-off-by: Thomas Rast <>
    Reported-by: Ævar Arnfjörð Bjarmason <>
    Signed-off-by: Junio C Hamano <>
    trast committed with gitster Jun 10, 2010
Commits on Jun 2, 2010
  1. @erickmattos @gitster

    refs: split log_ref_write logic into log_ref_setup

    Separation of the logic for testing and preparing the reflogs from
    function log_ref_write to a new non static new function: log_ref_setup.
    This allows to be performed from outside the first all reasonable checks
    and procedures for writing reflogs.
    Signed-off-by: Erick Mattos <>
    Signed-off-by: Junio C Hamano <>
    erickmattos committed with gitster May 21, 2010
Commits on Mar 13, 2010
  1. @trast @gitster

    Support showing notes from more than one notes tree

    With this patch, you can set notes.displayRef to a glob that points at
    your favourite notes refs, e.g.,
    	displayRef = refs/notes/*
    Then git-log and friends will show notes from all trees.
    Thanks to Junio C Hamano for lots of feedback, which greatly
    influenced the design of the entire series and this commit in
    Signed-off-by: Thomas Rast <>
    Acked-by: Johan Herland <>
    Signed-off-by: Junio C Hamano <>
    trast committed with gitster Mar 12, 2010
Commits on Jan 20, 2010
  1. @gitster

    rev-parse --branches/--tags/--remotes=pattern

    Since local branch, tags and remote tracking branch namespaces are
    most often used, add shortcut notations for globbing those in
    manner similar to --glob option.
    With this, one can express the "what I have but origin doesn't?"
    'git log --branches --not --remotes=origin'
    Original-idea-by: Johannes Sixt <>
    Signed-off-by: Ilari Liusvaara <>
    Signed-off-by: Junio C Hamano <>
    Ilari Liusvaara committed with gitster Jan 20, 2010
  2. @gitster

    rev-parse --glob

    Add --glob=<glob-pattern> option to rev-parse and everything that
    accepts its options. This option matches all refs that match given
    shell glob pattern (complete with some DWIM logic).
    'git log --branches --not --glob=remotes/origin'
    To show what you have that origin doesn't.
    Signed-off-by: Ilari Liusvaara <>
    Signed-off-by: Junio C Hamano <>
    Ilari Liusvaara committed with gitster Jan 20, 2010
Commits on Nov 10, 2009
  1. @jaysoffian @gitster

    teach warn_dangling_symref to take a FILE argument

    Different callers of warn_dangling_symref() may want to control whether its
    output goes to stdout or stderr so let it take a FILE argument.
    Signed-off-by: Jay Soffian <>
    Signed-off-by: Junio C Hamano <>
    jaysoffian committed with gitster Nov 10, 2009
Commits on Jun 1, 2009
  1. @chriscool @gitster

    refs: add a "for_each_replace_ref" function

    This is some preparation work for the following patches that are using
    the "refs/replace/" ref namespace.
    Signed-off-by: Christian Couder <>
    Signed-off-by: Junio C Hamano <>
    chriscool committed with gitster Jan 23, 2009
Commits on May 14, 2009
  1. @felipec @gitster

    Change prettify_ref to prettify_refname

    In preparation to be used when the ref object is not available
    Signed-off-by: Felipe Contreras <>
    Acked-by: Jeff King <>
    Signed-off-by: Junio C Hamano <>
    felipec committed with gitster May 14, 2009
Commits on Apr 13, 2009
  1. @bertwesarg @gitster

    shorten_unambiguous_ref(): add strict mode

    Add the strict mode of abbreviation to shorten_unambiguous_ref(), i.e. the
    resulting ref won't trigger the ambiguous ref warning.
    All users of shorten_unambiguous_ref() still use the loose mode.
    Signed-off-by: Bert Wesarg <>
    Signed-off-by: Junio C Hamano <>
    bertwesarg committed with gitster Apr 13, 2009
Commits on Apr 12, 2009
  1. @gitster

    Merge branch 'jk/show-upstream'

    * jk/show-upstream:
      branch: show upstream branch when double verbose
      make get_short_ref a public function
      for-each-ref: add "upstream" format field
      for-each-ref: refactor refname handling
      for-each-ref: refactor get_short_ref function
    gitster committed Apr 12, 2009
Commits on Apr 8, 2009
  1. @peff @gitster

    make get_short_ref a public function

    Often we want to shorten a full ref name to something "prettier"
    to show a user. For example, "refs/heads/master" is often shown
    simply as "master", or "refs/remotes/origin/master" is shown as
    Many places in the code use a very simple formula: skip common
    prefixes like refs/heads, refs/remotes, etc. This is codified in
    the prettify_ref function.
    for-each-ref has a more correct (but more expensive) approach:
    consider the ref lookup rules, and try shortening as much as
    possible while remaining unambiguous.
    This patch makes the latter strategy globally available as
    Signed-off-by: Jeff King <>
    Signed-off-by: Junio C Hamano <>
    peff committed with gitster Apr 7, 2009
Commits on Apr 5, 2009
  1. @gitster

    Merge branch 'cc/sha1-bsearch' into HEAD

    * cc/sha1-bsearch: (95 commits)
      patch-ids: use the new generic "sha1_pos" function to lookup sha1
      sha1-lookup: add new "sha1_pos" function to efficiently lookup sha1
      Update draft release notes to 1.6.3
      send-email: ensure quoted addresses are rfc2047 encoded
      send-email: correct two tests which were going interactive
      Documentation: git-svn: fix trunk/fetch svn-remote key typo
      Mailmap: Allow empty email addresses to be mapped
      Cleanup warning about known issues in cvsimport documentation
      Documentation: Remove an odd "instead"
      send-email: ask_default should apply to all emails, not just the first
      send-email: don't attempt to prompt if tty is closed
      fix portability problem with IS_RUN_COMMAND_ERR
      Documentation: use "spurious .sp" XSLT if DOCBOOK_SUPPRESS_SP is set
      mailmap: resurrect lower-casing of email addresses
      builtin-clone.c: no need to strdup for setenv
      builtin-clone.c: make junk_pid static
      git-svn: add a double quiet option to hide git commits
      Update draft release notes to
      Documentation: push.default applies to all remotes
    gitster committed Apr 4, 2009
Commits on Mar 30, 2009
  1. @chriscool @gitster

    refs: add "for_each_ref_in" function to refactor "for_each_*_ref" fun…

    The "for_each_{tag,branch,remote,replace,}_ref" functions are
    redefined in terms of "for_each_ref_in" so that we can lose the
    hardcoded length of prefix strings from the code.
    Signed-off-by: Christian Couder <>
    chriscool committed with gitster Mar 30, 2009
Commits on Mar 9, 2009
  1. @gitster

    Use a common function to get the pretty name of refs

    The result should be consistent between fetch and push, so we ought to
    use the same code in both cases, even though it's short.
    Signed-off-by: Daniel Barkalow <>
    Signed-off-by: Junio C Hamano <>
    Daniel Barkalow committed with gitster Mar 8, 2009
Commits on Feb 11, 2009
  1. @gitster

    remote prune: warn dangling symrefs

    If you prune from the remote "frotz" that deleted the ref your tracking
    branch remotes/frotz/HEAD points at, the symbolic ref will become
    dangling.  We used to detect this as an error condition and issued a
    message every time refs are enumerated.
    This stops the error message, but moves the warning to "remote prune".
    Signed-off-by: Junio C Hamano <>
    gitster committed Feb 8, 2009
Commits on Jan 20, 2009
  1. @gitster

    Introduce for_each_recent_reflog_ent().

    This can be used to scan only the last few kilobytes of a reflog, as a
    cheap optimization when the data you are looking for is likely to be
    found near the end of it.  The caller is expected to fall back to the
    full scan if that is not the case.
    Signed-off-by: Junio C Hamano <>
    gitster committed Jan 19, 2009
Commits on May 5, 2008
  1. @gitster

    Allow for having for_each_ref() list extra refs

    These refs can be anything, but they are most likely useful as
    pointing to objects that you know are in the object database but don't
    have any regular refs for. For example, when cloning with --reference,
    the refs in this repository should be listed as objects that we have,
    even though we don't have refs in our newly-created repository for
    them yet.
    Signed-off-by: Daniel Barkalow <>
    Signed-off-by: Junio C Hamano <>
    Daniel Barkalow committed with gitster Apr 27, 2008
Commits on Feb 23, 2008
  1. @gitster

    refs.c: make close_ref() and commit_ref() non-static

    This is in preparation to the reflog-expire changes which will
    allow updating the ref after expiring the reflog.
    Signed-off-by: Brandon Casey <>
    Signed-off-by: Junio C Hamano <>
    Brandon Casey committed with gitster Feb 22, 2008
Commits on Jan 2, 2008
  1. @gitster

    lock_any_ref_for_update(): reject wildcard return from check_ref_format

    Recent check_ref_format() returns -3 as well as -1 (general
    error) and -2 (less than two levels).  The caller was explicitly
    checking for -1, to allow "HEAD" but still needed to disallow
    bogus refs.
    This introduces symbolic constants for the return values from
    check_ref_format() to make them read better and more
    meaningful.  Normal ref creation codepath can still treat
    non-zero return values as errors.
    Signed-off-by: Junio C Hamano <>
    gitster committed Jan 1, 2008
Commits on Nov 16, 2007
  1. @gitster

    refs.c: Remove unused get_ref_sha1()

    Signed-off-by: Johannes Sixt <>
    Signed-off-by: Junio C Hamano <>
    Johannes Sixt committed with gitster Nov 15, 2007
Commits on Sep 5, 2007
  1. @jasampler @gitster

    Function for updating refs.

    A function intended to be called from builtins updating refs
    by locking them before write, specially those that came from
    scripts using "git update-ref".
    [jc: with minor fixups]
    Signed-off-by: Carlos Rica <>
    Signed-off-by: Junio C Hamano <>
    jasampler committed with gitster Sep 5, 2007
Commits on May 10, 2007
  1. git-update-ref: add --no-deref option for overwriting/detaching ref

    git-checkout is also adapted to make use of this new option
    instead of the handcrafted command sequence.
    Signed-off-by: Sven Verdoolaege <>
    Signed-off-by: Junio C Hamano <>
    Sven Verdoolaege committed with Junio C Hamano May 9, 2007
Commits on Apr 10, 2007
  1. @torvalds

    Add 'resolve_gitlink_ref()' helper function

    This new function resolves a ref in *another* git repository.  It's
    named for its intended use: to look up the git link to a subproject.
    It's not actually wired up to anything yet, but we're getting closer to
    having fundamental plumbing support for "links" from one git directory
    to another, which is the basis of subproject support.
    [jc: amended a FILE* leak]
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Junio C Hamano <>
    torvalds committed with Junio C Hamano Apr 9, 2007
Commits on Feb 3, 2007
  1. scan reflogs independently from refs

    Currently, the search for all reflogs depends on the existence of
    corresponding refs under the .git/refs/ directory.  Let's scan the
    .git/logs/ directory directly instead.
    Signed-off-by: Nicolas Pitre <>
    Signed-off-by: Junio C Hamano <>
    Nicolas Pitre committed with Junio C Hamano Feb 3, 2007
Commits on Jan 28, 2007
  1. lock_ref_sha1_basic(): remember the original name of a ref when resol…

    …ving it
    A ref might be pointing to another ref but only the name of the last ref
    is remembered.  Let's remember about the first name as well.
    Signed-off-by: Nicolas Pitre <>
    Signed-off-by: Junio C Hamano <>
    Nicolas Pitre committed with Junio C Hamano Jan 26, 2007
  2. make reflog filename independent from struct ref_lock

    This allows for ref_log_write() to be used in a more flexible way,
    and is needed for future changes.
    This is only code reorg with no behavior change.
    Signed-off-by: Nicolas Pitre <>
    Signed-off-by: Junio C Hamano <>
    Nicolas Pitre committed with Junio C Hamano Jan 26, 2007
Commits on Jan 20, 2007
  1. Extend read_ref_at() to be usable from places other than sha1_name.

    You can pass an extra argument to the function to receive the
    reflog message information.  Also when the log does not go back
    beyond the point the user asked, the cut-off time and count are
    given back to the caller for emitting the error messages as
    We could later add configuration for get_sha1_basic() to make it
    an error instead of it being just a warning.
    Signed-off-by: Junio C Hamano <>
    Junio C Hamano committed Jan 19, 2007
Commits on Jan 9, 2007
  1. @dscho

    Sanitize for_each_reflog_ent()

    It used to ignore the return value of the helper function; now, it
    expects it to return 0, and stops iteration upon non-zero return
    values; this value is then passed on as the return value of
    Further, it makes no sense to force the parsing upon the helper
    functions; for_each_reflog_ent() now calls the helper function with
    old and new sha1, the email, the timestamp & timezone, and the message.
    Signed-off-by: Johannes Schindelin <>
    Signed-off-by: Junio C Hamano <>
    dscho committed with Junio C Hamano Jan 8, 2007
Commits on Dec 21, 2006
  1. add for_each_reflog_ent() iterator

    Signed-off-by: Junio C Hamano <>
    Junio C Hamano committed Dec 18, 2006
Commits on Dec 6, 2006
  1. @hjemli

    git-branch: let caller specify logmsg

    This changes the signature of rename_ref() in refs.[hc] to include a
    logmessage for the reflogs.
    Also, builtin-branch.c is modified to provide a proper logmessage + call
    setup_ident() before any logmessages are written.
    Signed-off-by: Lars Hjemli <>
    Signed-off-by: Junio C Hamano <>
    hjemli committed with Junio C Hamano Nov 30, 2006
  2. @hjemli

    git-branch: add options and tests for branch renaming

    Extend git-branch with the following options:
      git-branch -m|-M [<oldbranch>] newbranch
    The -M variation is required to force renaming over an exsisting
    This also indroduces $GIT_DIR/RENAME_REF which is a "metabranch"
    used when renaming branches. It will always hold the original sha1
    for the latest renamed branch.
    Additionally, if $GIT_DIR/logs/RENAME_REF exists, all branch rename
    events are logged there.
    Finally, some testcases are added to verify the new options.
    Signed-off-by: Lars Hjemli <>
    Signed-off-by: Junio C Hamano <>
    hjemli committed with Junio C Hamano Nov 28, 2006
Commits on Nov 22, 2006
  1. Store peeled refs in packed-refs (take 2).

    This fixes the previous implementation which failed to optimize
    repositories with tons of lightweight tags.  The updated
    packed-refs format begins with "# packed-refs with:" line that
    lists the kind of extended data the file records.  Currently,
    there is only one such extension defined, "peeled".  This stores
    the "peeled tag" on a line that immediately follows a line for a
    tag object itself in the format "^<sha-1>".
    The header line itself and any extended data are ignored by
    older implementation, so packed-refs file generated with this
    version can still be used by older git.  packed-refs made by
    older git can of course be used with this version.
    Signed-off-by: Junio C Hamano <>
    Junio C Hamano committed Nov 21, 2006
Commits on Nov 20, 2006
  1. Store peeled refs in packed-refs file.

    This would speed up "show-ref -d" in a repository with mostly
    packed tags.
    Signed-off-by: Junio C Hamano <>
    Junio C Hamano committed Nov 19, 2006
Commits on Oct 6, 2006
  1. ref-log: allow ref@{count} syntax.

    Often I find myself wanting to say 'tip of "next" before I
    merged the last three topics'.  Now I can say that with:
    	git log next@{3}
    Since small integers alone are invalid input strings to
    approxidate, there is no fear of confusion.
    Signed-off-by: Junio C Hamano <>
    Junio C Hamano committed Oct 5, 2006
Something went wrong with that request. Please try again.