Add 'git push' and other DVCS equivalents
In the SQL Source Control GUI add a button or checkbox to allow pushing changes to the remote repository. This saves having to go to the command-line or another GUI to push our changes up to the remote repository.
Good news! SQL Source Control 4.1 now lets you push your changes in Git.
After you commit changes (which you can now do inside the tool, rather than just saving and committing externally), you have the option to push to the remote repository. Similarly, when you get latest, you can pull changes.
We think we’ve got the major actions covered now and that if you’re doing anything more advanced, you’d probably prefer to do it in your regular external git client.
But please tell us in separate UserVoice requests if there are other actions you would like surfaced in SSMS via SQL Source Control!
Taliesin Sisson commented
My DBAs love the fact they get to stay in SMS. The only headache I have now is that it does not seem to support origins with this layout: ssh://email@example.com/MyCompany/company-db.git
I am sure there a lot of people using ssh for git.
Mark Snelling commented
@David, no I don't think that always push is a good idea. Perhaps something like a drop-down with those options that @Neil suggested with the last selected option being the default for current commit (if that makes sense?)
AdminJames Billings (Admin, Redgate) commented
I agree with Neil that no one workflow will suit all users.
It's possible to make a copy of our default git.xml file and edit it to do the push as well - please contact our support team at firstname.lastname@example.org who can advise on this.
Neil Cross commented
@David, IMO you can't have this feature *always* commit and push to a remote repo, let alone *always* commit locally. There's too much variance in possible workflows (and merge requirements) used to justify implementing only one of these approaches.
For instance, personally I like the current functionality which doesn't even stage the changes, just persists them to the repo as working changes. I would use a change which stages the change, and occasionally would use commit local.
I can see how Mark's suggestion would be useful for some cases, and I think that some UI to choose between:
* save to working
* commit local (+commit message box)
* commit + push
but choosing any single one of these to stick to will be detrimental to most other users.
@Mark - if the button always pushed, would that work for you? Or do you sometimes not want to push immediately?