threads / discuss / 35282

Splitting files merge with branches

Subject: Splitting files merge with branches

## tl;dr

2 messages between Nov 5, 2013 and Nov 5, 2013.

replies: 1people: 2as markdown or json

Javier Domingo· Nov 5, 2013, 09:38 UTC · lore
Hi,

I have been using git for now 4 years, and one feature I miss a lot, that would increase the usability of git in many cases, would be having it detect "inter-file" movements, so that if I, in a single commit just part one file into many, git can track that change.

I suppose this is quite difficult, as would mean having extra features in diffs, and I don't know how could it be implemented, but that would ease even more having integration branches, and merging one with eachother.

I wouldn't either know how to split it, in the means that if 5 lines are in the middle of a split, where would those lines go? But as you have resolved quite variety of problems, you might now a way.

Just wanted to collaborate with my idea =)
Cheers,
Javier Domingo Cansino
Junio C Hamano· Nov 5, 2013, 19:19 UTC · re: Javier Domingo · lore

Re: Splitting files merge with branches

Javier Domingo <javierdo1@gmail.com> writes:
Show 7 quoted lines
> I have been using git for now 4 years, and one feature I miss a lot,
> that would increase the usability of git in many cases, would be
> having it detect "inter-file" movements, so that if I, in a single
> commit just part one file into many, git can track that change.
>
> I suppose this is quite difficult, as would mean having extra features
> in diffs, and I don't know how could it be implemented,...
Sounds like $gmane/217 to me.
http://thread.gmane.org/gmane.comp.version-control.git/27/focus=217

Some of the pieces that are needed to immplement the "drilling down" Linus envisioned in the message are already there, e.g. you can ask "log -S<block of text> -1" to find the last commit that touched the block of text in question. Once you find that commit, you can inspect "git show -m -p <that-commit>" and find "Ahh, that block of text that appeared in the new tree came from five copies of similar blocks of text in the old tree". Nobody wrote that last piece of the logic yet, though.

← back to recent threads