1. 16 5月, 2006 3 次提交
    • N
      pack-object: slightly more efficient · ff45715c
      Nicolas Pitre 提交于
      Avoid creating a delta index for objects with maximum depth since they
      are not going to be used as delta base anyway.  This also reduce peak
      memory usage slightly as the current object's delta index is not useful
      until the next object in the loop is considered for deltification. This
      saves a bit more than 1% on CPU usage.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      ff45715c
    • N
      simple euristic for further free packing improvements · 4e8da195
      Nicolas Pitre 提交于
      Given that the early eviction of objects with maximum delta depth
      may exhibit bad packing on its own, why not considering a bias against
      deep base objects in try_delta() to mitigate that bad behavior.
      
      This patch adjust the MAX_size allowed for a delta based on the depth of
      the base object as well as enabling the early eviction of max depth
      objects from the object window.  When used separately, those two things
      produce slightly better and much worse results respectively.  But their
      combined effect is a surprising significant packing improvement.
      
      With this really simple patch the GIT repo gets nearly 15% smaller, and
      the Linux kernel repo about 5% smaller, with no significantly measurable
      CPU usage difference.
      Signed-off-by: NNicolas Pitre <nico@cam.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      4e8da195
    • L
      read-tree --reset -u fix. · 6d6776cb
      Linus Torvalds 提交于
      The previous commit makes -u to mean "I do want to remove the
      local changes, just update it from the read tree" only for
      one-way merge.  It makes sense to have it depend on the
      "--reset" flag instead.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      6d6776cb
  2. 15 5月, 2006 5 次提交
    • J
      read-tree -u one-way merge fix to check out locally modified paths. · 613f0273
      Junio C Hamano 提交于
      The "-u" flag means "update the working tree files", but to
      other types of merges, it also implies "I want to keep my local
      changes" -- because they prevent local changes from getting lost
      by using verify_uptodate.  The one-way merge is different from
      other merges in that its purpose is opposite of doing something
      else while keeping unrelated local changes.  The point of
      one-way merge is to nuke local changes.  So while it feels
      somewhat wrong that this actively loses local changes, it is the
      right thing to do.
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      613f0273
    • L
      Simplify "git reset --hard" · c68998f5
      Linus Torvalds 提交于
      Now that the one-way merge strategy does the right thing wrt files that do
      not exist in the result, just remove all the random crud we did in "git
      reset" to do this all by hand.
      
      Instead, just pass in "-u" to git-read-tree when we do a hard reset, and
      depend on git-read-tree to update the working tree appropriately.
      
      This basically means that git reset turns into
      
      	# Always update the HEAD ref
      	git update-ref HEAD "$rev"
      
      	case "--soft"
      		# do nothing to index/working tree
      	case "--hard"
      		# read index _and_ update working tree
      		git-read-tree --reset -u "$rev"
      	case "--mixed"
      		# update just index, report on working tree differences
      		git-read-tree --reset "$rev"
      		git-update-index --refresh
      
      which is what it was always semantically doing, it just did it in a
      rather strange way because it was written to not expect git-read-tree to
      do anything to the working tree.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      c68998f5
    • L
      Allow one-way tree merge to remove old files · 76b99b81
      Linus Torvalds 提交于
      For some random reason (probably just because nobody noticed), the one-way
      merge strategy didn't mark deleted files as deleted, so if you used
      
      	git-read-tree -m -u <newtree>
      
      it would update the files that got changed in the index, but it would not
      delete the files that got deleted.
      
      This should fix it, and I can't imagine that anybody depends on the old
      strange "update only existing files" behaviour.
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      76b99b81
    • J
      Merge branch 'fix' · 975bf9cf
      Junio C Hamano 提交于
      * fix:
        include header to define uint32_t, necessary on Mac OS X
      975bf9cf
    • B
      d9635e9c
  3. 14 5月, 2006 3 次提交
    • J
      Merge branch 'ml/cvs' · 5f7f211a
      Junio C Hamano 提交于
      * ml/cvs:
        Change to allow subdir updates from Eclipse
        Many fixes for most operations in Eclipse.
        Added logged warnings for CVS error returns
        cvsserver: use git-rev-list instead of git-log
        git-cvsexportcommit: Add -f(orce) and -m(essage prefix) flags, small cleanups.
      5f7f211a
    • J
      Merge branch 'fix' · 3a3e89b8
      Junio C Hamano 提交于
      * fix:
        Fix git-pack-objects for 64-bit platforms
      3a3e89b8
    • D
      Fix git-pack-objects for 64-bit platforms · 66561f5a
      Dennis Stosberg 提交于
      The offset of an object in the pack is recorded as a 4-byte integer
      in the index file.  When reading the offset from the mmap'ed index
      in prepare_pack_revindex(), the address is dereferenced as a long*.
      This works fine as long as the long type is four bytes wide.  On
      NetBSD/sparc64, however, a long is 8 bytes wide and so dereferencing
      the offset produces garbage.
      
      [jc: taking suggestion by Linus to use uint32_t]
      Signed-off-by: NDennis Stosberg <dennis@stosberg.net>
      Signed-off-by: NJunio C Hamano <junkio@cox.net>
      66561f5a
  4. 11 5月, 2006 1 次提交
  5. 10 5月, 2006 11 次提交
  6. 09 5月, 2006 9 次提交
  7. 08 5月, 2006 8 次提交