Merged repo for protocol headers? Why are they split?

Daniel Martin consume.noise at gmail.com
Thu Nov 30 15:24:17 UTC 2017


On 30 November 2017 at 14:28, Emil Velikov <emil.l.velikov at gmail.com> wrote:
> On 29 November 2017 at 13:40, Daniel Martin <consume.noise at gmail.com> wrote:
>> On 28 November 2017 at 16:51, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>>> One reasonably easy way to fold the repositories [while preserving all
>>> the history] is via git filter-branch.
>>
>> Yes, but, filter-branch rewrites the history too. As Peter stated
>> earlier, this breaks commit messages referencing other commits.
>>
> Right. I did not know there are such references in the protos codebase.
> Seemingly are are a few :-\ Two ideas come to mind:
>  - amend + add reference to the original sha
>  - amend + adjust the sha to the new one

Tracking the old and new sha might be difficult.
Amending changes the history of following commits too. ;)

>>> One could even script the process ;-)
>>
>> PoC: https://github.com/bartsch/proto2k-generator/blob/master/generator.sh
>
> Not sure if one needs all the fancy stuff with ls-tree - as we want
> separate subdirs a simple mkdir + mv should suffice.

Only changing the subdirs is easy and as this changes the history
anyway I used it to test what's possible with filter-branch as I
haven't played with it yet, i.e.:
- add a $fooproto prefix to the subject
- remove files we may delete later anyway
- sort files into specific directories (specs -> specs/$fooproto/...,
.h -> include/X11/{fonts,extensions,...}

> Either way, I'm just sharing some ideas. It'll be up-to the core X
> devs to decide on the approach.

Me too. And if the decision is to f*ck up the history, I contributed
an example howto do it the hard way. ;)


More information about the xorg-devel mailing list