Re: What's cooking in git.git (Jun 2010, #04; Wed, 23)
- From
Finn Arne Gangstad <finnag@pvv.org>
- Date
- Jun 24, 2010, 11:17 UTC
- Message-ID
- <20100624111757.GB3453@pvv.org>
- In-Reply-To
- <7viq59e6zn.fsf@alter.siamese.dyndns.org>
On Wed, Jun 23, 2010 at 03:09:32PM -0700, Junio C Hamano wrote:
Show 7 quoted lines
> * eb/double-convert-before-merge (2010-06-16) 1 commit > - ll-merge: Normalize files before merging > > If running git-to-worktree and then worktree-to-git _fixes_ something, it > means that these are not roundtrip operations; there is something that is > fundamentally wrong. The commit log message doesn't help explaining it, > either.
If .gitattributes is different on the different sides, or if you enable autocrlf, the current repo contents may change after git-to-worktree and worktree-to-git again. This is most easily seen if you add some eol attributes, but also with clean/smudge filters, ident and so on.
Assume you start out with a repo that has a lot of text files with CRLF checked in (A).
C---- / \ A---B---D
B: Add "* text=auto" to .gitattributes and normalize all files to LF only in repo
D: try to merge C
Without this patch you will get a ridiculous number of lf/crlf conflicts when trying to merge C into D, since the repository contents for C are "wrong" wrt the new .gitattributes file.
- Finn Arne