[oe] Git Migration Status

Rod Whitby rod at whitby.id.au
Wed Jul 30 15:12:46 UTC 2008


Richard Purdie wrote:
> Git commit IDs are a totally free form fields. There is nothing stopping
> me making commit A as "Richard <rp at localhost>", commit B as "rpurdie
> rurdie at laptop" and then commit C as "Joe <someone at somewhere>". Commit A
> was my desktop, commit B was my laptop, commit C was on some account I
> borrowed.

However, a git commit ID is intended to be a real name and a real email 
address, and the distinction between an author id and a commit id is 
meant to have real meaning (i.e. two different people were involved in 
how this change came into being and how it got accepted into the SCM).

Note that both the author ID and commit ID are meant to be real names 
and real email addresses.  You do want to be able to contact each of 
those two people under different circumstances.

> One problem with git is that its all too easy to screw up setting the
> author/commit IDs. I've done it before, I suspect I will again next time
> I change machine and I'm sure others will too intentionally or
> otherwise.

I agree that this can be a problem.

My proposal is to keep an AUTHORS file at the top level of the OE 
repository, and make git check the commit ID against that file in the 
commit hook.

This would be *much* easier to manage than having to have pseudo email 
address aliases.  It would also mean that anyone with existing commit 
privs could update the AUTHORS file for someone else if that someone 
else needs to change their contact email address for some reason.

> Why does it matter? I'd like to be able to go to the SCM and *know* who
> made a commit (knowing who authored the patch is different). I'd like to
> be able to view all commits for a given "identity".

I'd like to do the same, and I'd like those identifiers to (a) be real 
email addresses and (b) be the same identifiers those people use on 
other git repositories so I can judge the pedigree of the person making 
the commit.

> Also, "the kernel does this, why can't we" is a totally bogus argument:
> 
> 1. If the kernel jumped off a cliff, would you too?

If it involved how to use git, yes.  Otherwise, no.

> 2. The kernel uses a pull model for development and people check IDs for
> some sanity before pulling. With the push model we're going for we don't
> have that luxury.

That is true.  However, you also need to account for a multi-level push 
model, where the second and subsequent levels may not have the same 
restrictions on IDs that you are proposing for the master OE repository. 
  In this case, the author and committer will really be two different 
people, and you want to have real contact email addresses for both.

In summary, I'm dead against identifiers that are not the usual 
identifier that OE contributors use everywhere on the internet.

-- Rod





More information about the Openembedded-devel mailing list