The github/git workflow is a bit annoying. Having to fork and push to your own github repo means you have to use two remotes. Then if you use a dev machine that doesn't have github access (for security reasons), now you need three remotes.
Conversation
Replying to
It's a GitHub issue rather than a Git issue. Gerrit allows contributors without commit access to push their proposed changes to the main repository directly.
Drastically better performance and review UI. Also properly keeps track of each revision of the changes through rebases.
Replying to
Yeah, it'd also be nice if github allowed ssh keys to access a specific repo only. If they did, it's eliminate my bastion host as well.
For example, this is how you push changes from your feature branch to the upstream repository:
git push origin HEAD:refs/for/branch_name
It uses a pre-commit hook to add a random Change-Id to each commit message and that's how it knows which change is which after rebase.
2
1
Replying to
Nifty.
I do wish it was easier to do than me having to do:
git push origin client/ssh-main:refs/heads/ssh-main
I really shouldn't need to do the refs/heads bit when pushing, but I don't know how else to do it.

