1. 21 6月, 2013 7 次提交
  2. 09 5月, 2013 1 次提交
    • F
      Add new @ shortcut for HEAD · cdfd9483
      Felipe Contreras 提交于
      Typing 'HEAD' is tedious, especially when we can use '@' instead.
      
      The reason for choosing '@' is that it follows naturally from the
      ref@op syntax (e.g. HEAD@{u}), except we have no ref, and no
      operation, and when we don't have those, it makes sens to assume
      'HEAD'.
      
      So now we can use 'git show @~1', and all that goody goodness.
      
      Until now '@' was a valid name, but it conflicts with this idea, so
      let's make it invalid. Probably very few people, if any, used this name.
      Signed-off-by: NFelipe Contreras <felipe.contreras@gmail.com>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      cdfd9483
  3. 02 5月, 2013 30 次提交
  4. 24 3月, 2013 1 次提交
  5. 18 3月, 2013 1 次提交
    • M
      pack-refs: add fully-peeled trait · c29c46fa
      Michael Haggerty 提交于
      Older versions of pack-refs did not write peel lines for
      refs outside of refs/tags. This meant that on reading the
      pack-refs file, we might set the REF_KNOWS_PEELED flag for
      such a ref, even though we do not know anything about its
      peeled value.
      
      The previous commit updated the writer to always peel, no
      matter what the ref is. That means that packed-refs files
      written by newer versions of git are fine to be read by both
      old and new versions of git. However, we still have the
      problem of reading packed-refs files written by older
      versions of git, or by other implementations which have not
      yet learned the same trick.
      
      The simplest fix would be to always unset the
      REF_KNOWS_PEELED flag for refs outside of refs/tags that do
      not have a peel line (if it has a peel line, we know it is
      valid, but we cannot assume a missing peel line means
      anything). But that loses an important optimization, as
      upload-pack should not need to load the object pointed to by
      refs/heads/foo to determine that it is not a tag.
      
      Instead, we add a "fully-peeled" trait to the packed-refs
      file. If it is set, we know that we can trust a missing peel
      line to mean that a ref cannot be peeled. Otherwise, we fall
      back to assuming nothing.
      
      [commit message and tests by Jeff King <peff@peff.net>]
      Signed-off-by: NMichael Haggerty <mhagger@alum.mit.edu>
      Signed-off-by: NJeff King <peff@peff.net>
      Signed-off-by: NJunio C Hamano <gitster@pobox.com>
      c29c46fa