Host github-yipit-main
Hostname github.com
IdentityFile ~/.ssh/yipit_main_rsa
then just go about your merry way of: git clone git@github-yipit-main:/yipit/yipit-main.gitI think it also bothers the side of me coming from compiled languages where there is more to a code release then copy files from a to b.
> not clear what code has and has not been deployed
You can have your production machines deploy from specific branches. In other words, master is the development branch, some-version-branch is the production branch. You can also do it vice versa. You can use tags. Lots of solutions.
> code is not explicitly validated (automatically, manually, on a build/test lab)
If you use the structure above, you wouldn't commit to a production branch unless you did that. Another solution is to force validation/testing using hooks before allowing a commit to a production branch on your development machine.
> and it isn't clear who triggered the release.
Not sure what you mean here ... every commit is recorded, so you always know who did what.
(Though to be honest, this flow seems overly complex, and I'm not 100% sure what problem it's solving).