Re: [PATCH v2 4/4] upload-archive: use start_command instead of fork

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

 



Am 01.08.2011 23:20, schrieb Johannes Sixt:
> Am 01.08.2011 22:48, schrieb René Scharfe:
>> So git archive gives the right results when writing to a pipe, but
>> always the same wrong result when writing directly to a file.
> 
> This could indeed be a CRLF issue. archive-tar.c runs gzip to let it
> write to the original fd 1 (stdout). gzip is an MSYS program, and MSYS
> is "clever" and sets up the channel in text mode (CRLF conversion) if it
> is a regular file, but in binary mode if it is a pipe.
> 
> Without the gzip filter, git-archive writes to stdout itself. Since we
> have set up all our channels in binary mode, we do not suffer from the
> same problem for plain tar format.

That seems to be it indeed:

	$ git config tar.t.command 'tar tf -'
	$ git archive --format=t v1.7.6 >a.t
	$ git archive --format=t v1.7.6 | cat >b.t

	$ diff -b a.t b.t | wc -l
	      0

	$ md5sum <a.t
	8026ba48963ec4f849ae863f822bccbc *-

	$ md5sum <b.t
	7bcaa37bfcc47b1ae535369ae0399d90 *-

	$ sed 's/\r//' <a.t | md5sum
	7bcaa37bfcc47b1ae535369ae0399d90 *-

René
--
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]