GitHub's email correlation for authorship
github.com
github.com
I am not going to start requiring PGP signing for my projects, they are not big enough to miss something fishy. This was just something I hadn't considered, it is probably an obvious issue to many already.
It's trivial to spoof these fields using the --author argument to git-commit(1), by setting the GIT_AUTHOR_EMAIL/GIT_COMMITTER_EMAIL environment variables, or by setting a different name/email using git-config(1).
GitHub rocks, it has really changed our contributor attitudes. I am a happy, paying customer (another account) and just really hope you guys are around a long time!
Thanks!
> and just really hope you guys are around a long time!
We'll be here. It's a profitable business with a straightforward model and we intend to keep it that way.
So, you aren't 'dhh' but you commited using his email address and it showed up as him?
"Joe jobbing" is when spammers use real e-mail addresses in their From headers so that that person gets the flak. In a round about way, this is the same for patches/commits :-)
Changing the config is as simple as
git config user.email "david@loudthinking.com"
And you can add a --global flag if you want that to be the default for all repos instead of just the one you're on.Edit: There's also some way to do it with a --author= flag when you commit.
If this is "actually" a big issue or not is another question.
Edit: not to say this shouldn't be fixed I am curious if this implies anything else that I may be missing.
In fact, if it's not totally obvious to everyone that timf is the one that committed the latest commit, then this demonstration is noteworthy.
As for the second part I was wondering if this had any other implications such as committing to someone else repo or if it is just masking identities with another users.
There's a very strong builtin trust mechanism on GitHub — mainly due to the fact that repositories hang off of "users" instead of them hanging off of "projects".
And, myself, when browsing around aimlessly on GitHub, tend to check out either reputable projects (where such behaviour is not likely to go unnoticed) or the repos of a hacker i'm interested in — who surely doesn't have much reason to fake their own commits? ;p
Heh, maybe this could be the basis for a GitHub Reality TV show. "Tonight: DHH fakes his own death!" ;p
If you don't want people to worry about the integrity of your code, then "git tag -s" to sign a tag. Signing a tag makes it possible to verify the authenticity of the entire branch to that point.
here's a screenshot from some of my github expliots...
There's a big difference between a security hole and acting like a jackass.
i could have easily not been detected doing this. i chose to to spam the site to see how fast it could respond. i got those 2k users in about 3 minutes or so....