Currently I use the following steps:
That's a lot of steps, I want a fewer-clicks solution. Example:
PS. Bitbucket offers sync fork on server, so in hg only an hg pull is needed in this scenario
Thanks for the suggestion. The Sync function is part of the default Git extension that's built into Visual Studio. I'll keep this suggestion open for now though and bring it up to the VS folks.
@shana I'll use vs-git-ext for items that are part of the VS git extension. We do have the option of having the Sync button navigate to our own UI in the future if we wanted to take on requests like this.
@Haacked Not sure we have that option (of modifying behavior of Sync button) as that button is added by the Team Explorer/Git extension bits and it controls its own behavior and visibility. We _can_ provide more functionality in the Sync screen (and in the Branches screen as well), so we can provide things there that can automate scenarios like this.
In fact, given that we encourage forking and that keeping up to date with upstream is important, having a streamlined upstream sync workflow is probably a really good idea :smile:
Thank you for considering! I didn't know that was part of VS.
As part of this, would it possible to add a simple capability for new developers to branch from upstream/master (so that when they create a new branch it is as up to date as possible)... but then publish/push to origin/master where they can then create a pull request?
We're trying to find the easiest possible workflow to get new programmers started without resorting to the command line. This method would also reduce the chance of them getting a conflict locally.
Thanks for laying out those steps @diryboy! I was having to jump back over to GitHub for Windows because I couldn't figure out how to merge and submit a PR. I'm making the transition from TortoiseHg and I feel quite lost much of the time. However, I have really come to appreciate GitHub > BitBucket so I'm up for it. Hopefully my team will too and I don't have a mutiny on my hands! D :
@vinneyk I'm surprised that my steps listed above actually helped someone. Way to go. TortoiseHg is so easy to use that I never had a chance to type boring things in the command prompt. However, I find GitHub easier to use than BitBucket in browsing issues and PRs, where I would spend most of the time on. So, I use both.
@diryboy
Your first post guidance is only available if you have write access to the repo. If you're a contributor working on your own fork until your PRs are merged in upstream this gets even worse.
There's a branch with an experimental fork sync feature where it goes through all your local branches and updates them to their equivalent upstream branch if they have no local changes and then pushes them to your fork, as well as going through all the upstream branches and updating your local fork with them, so with one button click you can synchronize your whole fork locally and on the server. I'm hoping to get this feature out right after our next major release (so in a couple of more weeks, it needs a bit of cleaning up, the PR is #966).
Most helpful comment
@vinneyk I'm surprised that my steps listed above actually helped someone. Way to go. TortoiseHg is so easy to use that I never had a chance to type boring things in the command prompt. However, I find GitHub easier to use than BitBucket in browsing issues and PRs, where I would spend most of the time on. So, I use both.