Live data from Hacker News

Linus Torvalds did not commit this

github.com

71–80 of 198 posts

Re: Linus Torvalds did not commit this

#71
post #19

Earlier quoted context omitted.

Similarly, nothing stops you altering the time claimed in the commit. Or -- for that matter -- from taking someone's diff and claiming credit for it. For that reason, I jokingly created `git-upstage`, which streamlines the process of abusing commit edits and plagiarizing code! It squashes a branch, backdates it 5 minutes, and claims you wrote it. https://github.com/SilasX/git-upstage Edit: Looks like my last commit l…

I love this. Had a project in college that was supposed to be time limited... based on repository times. Oops. Big mistake prof. We rolled back the times on our repo and laughed maniacally about our free 6 hour extension.

Should professors really be spending their time locking down all the ways students may try to cheat? At Caltech, proctoring exams (for example) is not allowed by institute policy. A student's honor that he didn't cheat is considered good enough.

Re: Linus Torvalds did not commit this

#73
The issue at hand here is interesting: GIT _commit_ integrity is not guaranteed over all operations, even if you sign commits.

The problem is that GIT often changes commit details. If you, for example, rebase or cherry-pick a commit, the identity changes - as the commit includes a reference to the parent commit(s). This means that once you do any of those (standard) operations, the signature becomes invalid.

Signing only makes sense on a tag level or in repositories that keep all commits and never change them (e.g. by explicitly merging and adding merge commits).

There are systems that preserve commit integrity during all of those operations, e.g. DARCS.

Re: Linus Torvalds did not commit this

#74
post #41
post #6

TBH we "exploit" this when accepting PRs for an open source project I work on. It's not really feasible for us to expect / force each PR author to have a clean commit history, so we basically do some squashing, then commit the "single" change as the original author before merging.

I don't think you need to do this? I may be wrong but I thought if you squash the author's commits git will still give the author credit for the commit.

You are correct, the Author will stay the same and the Committer will be the person who squashed.

Re: Linus Torvalds did not commit this

#75
post #19

Earlier quoted context omitted.

Similarly, nothing stops you altering the time claimed in the commit. Or -- for that matter -- from taking someone's diff and claiming credit for it. For that reason, I jokingly created `git-upstage`, which streamlines the process of abusing commit edits and plagiarizing code! It squashes a branch, backdates it 5 minutes, and claims you wrote it. https://github.com/SilasX/git-upstage Edit: Looks like my last commit l…

I love this. Had a project in college that was supposed to be time limited... based on repository times. Oops. Big mistake prof. We rolled back the times on our repo and laughed maniacally about our free 6 hour extension.

Your comment basically reads, "I cheated and got away with it, and I'm proud of it too. I'm so awesome! Take that, stupid professor!"

Re: Linus Torvalds did not commit this

#77
post #6

TBH we "exploit" this when accepting PRs for an open source project I work on. It's not really feasible for us to expect / force each PR author to have a clean commit history, so we basically do some squashing, then commit the "single" change as the original author before merging.

So, when submitting to your project it can happen that I'm afterwards blamed for things I didn't do? (Or praised)

I don't think that could happen:

1. The content of the PR will stay the same. In this case, the only thing changing is the number of commits. Unless you expect someone to blame (or praise you) for the number of commits? 2. Git will track the Committer and Author separately.

Re: Linus Torvalds did not commit this

#78

There is a huge UX problem with validating the legitimacy of anything online. I have to know that credentials are available, and I have to know that it's possible to validate them. How do I even know if a particular set of credentials are legit? I'd have to know where to find validation for them. That's a whole other ball of wax in itself. And we default to not requiring such authentication because the means we have…

There's also the issue that securing these things is tricky. How do I secure and sync a gpg keg? Should I load a private meeting on my work PC? My phone?

Re: Linus Torvalds did not commit this

#79

Earlier quoted context omitted.

I love this. Had a project in college that was supposed to be time limited... based on repository times. Oops. Big mistake prof. We rolled back the times on our repo and laughed maniacally about our free 6 hour extension.

Your comment basically reads, "I cheated and got away with it, and I'm proud of it too. I'm so awesome! Take that, stupid professor!"

Don't hate the programmer, hate the tools. ;)

Re: Linus Torvalds did not commit this

#80

Earlier quoted context omitted.

I love this. Had a project in college that was supposed to be time limited... based on repository times. Oops. Big mistake prof. We rolled back the times on our repo and laughed maniacally about our free 6 hour extension.

Your comment basically reads, "I cheated and got away with it, and I'm proud of it too. I'm so awesome! Take that, stupid professor!"

and what is wrong with that?
Post reply on HN