1. 14 2月, 2006 1 次提交
  2. 13 2月, 2006 8 次提交
  3. 12 2月, 2006 14 次提交
  4. 11 2月, 2006 7 次提交
    • L
      Make "git clone" less of a deathly quiet experience · 5ee2ad65
      Linus Torvalds 提交于
      It used to be that "git-unpack-objects" would give nice percentages, but
      now that we don't unpack the initial clone pack any more, it doesn't. And
      I'd love to do that nice percentage view in the pack objects downloader
      too, but the thing doesn't even read the pack header, much less know how
      much it's going to get, so I was lazy and didn't.
      
      Instead, it at least prints out how much data it's gotten, and what the
      packing speed is. Which makes the user realize that it's actually doing
      something useful instead of sitting there silently (and if the recipient
      knows how large the final result is, he can at least make a guess about
      when it migt be done).
      
      So with this patch, I get something like this on my DSL line:
      
      	[torvalds@g5 ~]$ time git clone master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6 clone-test
      	Packing 188543 objects
      	  48.398MB  (154 kB/s)
      
      where even the speed approximation seems to be roughtly correct (even
      though my algorithm is a truly stupid one, and only really gives "speed in
      the last half second or so").
      
      Anyway, _something_ like this is definitely needed. It could certainly be
      better (if it showed the same kind of thing that git-unpack-objects did,
      that would be much nicer, but would require parsing the object stream as
      it comes in). But this is  big step forward, I think.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      5ee2ad65
    • J
      Define GIT_(AUTHOR|COMMITTER)_(NAME|EMAIL) to known values. · 29e55cd5
      Junio C Hamano 提交于
      Without these, running tests with an account with empty gecos
      field would fail.
      
      We might want to loosen error from "git-var -l" (but not
      "git-var GIT_AUTHOR_NAME") later, but that is more or less an
      independent issue.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      29e55cd5
    • J
      Merge branch 'lt/diff-tree' · 3f6726e1
      Junio C Hamano 提交于
      * lt/diff-tree:
        combine-diff: Record diff status a bit more faithfully
        find_unique_abbrev() simplification.
        combine-diff: move formatting logic to show_combined_diff()
        combined-diff: use diffcore before intersecting paths.
        diff-tree -c raw output
      3f6726e1
    • J
      git-commit -v: have patch at the end. · 9ae6be80
      Junio C Hamano 提交于
      It was pointed out that otherwise more important summary
      information prefixed with '#' would become prone to be missed.
      
      Also instead of chopping at the first '^---$' line, stop at the
      first 'diff --git a/' line.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      9ae6be80
    • J
      rev-list: default to abbreviate merge parent names under --pretty. · 9da5c2f0
      Junio C Hamano 提交于
      When we prettyprint commit log messages, merge parent names were
      often very long and there was no way to abbreviate it.
      
      This changes them to be abbreviated by default, and non-default
      abbreviations can be specified with --no-abbrev or --abbrev=<n>
      options.
      
      Note that this affects only the prettyprinted parent names.  The
      output from --show-parents is meant for machine consumption and
      is not affected by this flag.
      9da5c2f0
    • N
      delta micro optimization · 39556fbd
      Nicolas Pitre 提交于
      My kernel work habit made me look at the generated assembly for the
      delta code, and one obvious albeit small improvement is this patch.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      39556fbd
    • N
      count-delta.c: comment fixes · e7ad4a9c
      Nicolas Pitre 提交于
      There was a stale comment that explains why the old code could
      undercount when delta data copied things around inside detination
      buffer.  We do not use that kind of delta, so the comment does
      not apply.
      e7ad4a9c
  5. 10 2月, 2006 10 次提交
    • J
      Merge branch 'jc/empty-commit' · 4d44cb19
      Junio C Hamano 提交于
      * jc/empty-commit:
        t6000: fix a careless test library add-on.
        Do not allow empty name or email.
      4d44cb19
    • J
      combine-diff: Record diff status a bit more faithfully · d416df88
      Junio C Hamano 提交于
      This shows "new file mode XXXX" and "deleted file mode XXXX"
      lines like two-way diff-patch output does, by checking the
      status from each parent.
      
      The diff-raw output for combined diff is made a bit uglier by
      showing diff status letters with each parent.  While most of the
      case you would see "MM" in the output, an Evil Merge that
      touches a path that was added by inheriting from one parent is
      possible and it would be shown like these:
      
          $ git-diff-tree --abbrev -c HEAD
          2d7ca89675eb8888b0b88a91102f096d4471f09f
          ::000000 000000 100644 0000000... 0000000... 31dd686... AA	b
          ::000000 100644 100644 0000000... 6c884ae... c6d4fa8... AM	d
          ::100644 100644 100644 4f7cbe7... f8c295c... 19d5d80... RR	e
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      d416df88
    • J
      find_unique_abbrev() simplification. · 297a1aad
      Junio C Hamano 提交于
      Earlier it did not grok the 0{40} SHA1 very well, but what it
      needed to do was to find the shortest 0{N} that is not used as a
      valid object name to be consistent with the way names of valid
      objects are abbreviated.  This makes some users simpler.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      297a1aad
    • J
      git-status -v · cf7bb589
      Junio C Hamano 提交于
      This revamps the git-status command to take the same set of
      parameters as git commit.  It gives a preview of what is being
      committed with that command.  With -v flag, it shows the diff
      output between the HEAD commit and the index that would be
      committed if these flags were given to git-commit command.
      
      git-commit also acquires -v flag (it used to mean "verify" but
      that is the default anyway and there is --no-verify to turn it
      off, so not much is lost), which uses the updated git-status -v
      to seed the commit log buffer.  This is handy for writing a log
      message while reviewing the changes one last time.
      
      Now, git-commit and git-status are internally share the same
      implementation.
      
      Unlike previous git-commit change, this uses a temporary index
      to prepare the index file that would become the real index file
      after a successful commit, and moves it to the real index file
      once the commit is actually made.  This makes it safer than the
      previous scheme, which stashed away the original index file and
      restored it after an aborted commit.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      cf7bb589
    • J
      Merge branch 'jc/ls-files-o' · 4dc870d9
      Junio C Hamano 提交于
      * jc/ls-files-o:
        ls-files: honour per-directory ignore file from higher directories.
      4dc870d9
    • J
      count-delta.c: Match the delta data semantics change in version 3. · 91c76743
      Junio C Hamano 提交于
      This matches the count_delta() logic to the change previous
      commit introduces to patch_delta().
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      91c76743
    • N
      remove delta-against-self bit · d60fc1c8
      Nicolas Pitre 提交于
      After experimenting with code to add the ability to encode a delta
      against part of the deltified file, it turns out that resulting packs
      are _bigger_ than when this ability is not used.  The raw delta output
      might be smaller, but it doesn't compress as well using gzip with a
      negative net saving on average.
      
      Said bit would in fact be more useful to allow for encoding the copying
      of chunks larger than 64KB providing more savings with large files.
      This will correspond to packs version 3.
      
      While the current code still produces packs version 2, it is made future
      proof so pack versions 2 and 3 are accepted.  Any pack version 2 are
      compatible with version 3 since the redefined bit was never used before.
      When enough time has passed, code to use that bit to produce version 3
      packs could be added.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      d60fc1c8
    • J
      stat() for existence in safe_create_leading_directories() · 67d42212
      Jason Riedy 提交于
      Use stat() to explicitly check for existence rather than
      relying on the non-portable EEXIST error in sha1_file.c's
      safe_create_leading_directories().  There certainly are
      optimizations possible, but then the code becomes almost
      the same as that in coreutil's lib/mkdir-p.c.
      
      Other uses of EEXIST seem ok.  Tested on Solaris 8, AIX 5.2L,
      and a few Linux versions.  AIX has some unrelated (I think)
      failures right now; I haven't tried many recent gits there.
      Anyone have an old Ultrix box to break everything?  ;)
      
      Also remove extraneous #includes.  Everything's already in
      git-compat-util.h, included through cache.h.
      Signed-off-by: NJason Riedy <ejr@cs.berkeley.edu>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      67d42212
    • J
      combine-diff: move formatting logic to show_combined_diff() · 0a798076
      Junio C Hamano 提交于
      This way, diff-files can make use of it.  Also implement the
      full suite of what diff_flush_raw() supports just for
      consistency.  With this, 'diff-tree -c -r --name-status' would
      show what is expected.
      
      There is no way to get the historical output (useful for
      debugging and low-level Plumbing work) anymore, so tentatively
      it makes '-m' to mean "do not combine and show individual diffs
      with parents".
      
      diff-files matches diff-tree to produce raw output for -c.  For
      textual combined diff, use -p -c.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      0a798076
    • J
      call git_config() after setup_git_directory() · ce1610ea
      Junio C Hamano 提交于
      If you call setup_git_directory() to work from a subdirectory,
      that should be run first before running git_config().  Otherwise
      you would not read the configuration file from the correct place.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      ce1610ea