[PATCH 0/4] git-diff: use mode for tree:name syntax (was: Re: [PATCH 2/7] gitweb: Support comparing blobs with different names)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Apr 20, 2007 at 10:49:08PM +0200, Jakub Narebski wrote:
> So from me it is slight Nak to this patch, at least unless "git diff 
> <tree1>:<path1> <tree2>:<path2>" will take the information about file 
> name and mode (permissions) from <tree1> and <tree2>, and included such 
> information in extended git diff header.

I created a prototyp implemention:

* Patch 1:
 add a parameter to get_sha1 to store the mode, if it is known.
 If it is not possible to dermine the mode, it stores S_IFINVALID.

* Patch 2:
 add space for the mode in object_array (unknown mode is S_IFINVALID).

* Patch 3:
 stores the mode for <tree>:<filename> syntax

* Patch 4:
 use mode information for comparing two blobs

The patches are large, as some heavy used functions get a new
parameter. The changes should not increase the CPU time. Patch 2
increases the storage size for each object of object_array by an
unsigned for the mode.

My blobdiff patch will need some small adaptations:
* we need to add --raw -p --full-index as diff arguments
* we must pass $hash_parent_base.':'.$file_parent and
  $hash_base.':'.$file_name to git-diff instead of 
  $hash and $hash_parent, if possible.

mfg Martin Kögler

-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]