We've recently switched everyone at our company over to using SourceTree and in general it seems like a vast improvement except that we think the push behavior might be too aggressive. This manifests itself in two ways
This has resulted in new branches being pushed to a shared hosted repository accidentally. Since git encourages small batches of work and frequent branching and merging it seems reasonable for people to have multiple streams of work in progress as they switch from task to task. Defaulting to include all branches is counter-intuitive and it would make more sense to only push the current branch instead.
Does this line of thought seem reasonable?
Thanks,
chuck
Hi Chuck,
Fair point - it's been raised already that 'Push immediately..' in the commit dialog really should only push the current branch, and I intend to change that in future: https://jira.atlassian.com/browse/SRCTREE-715
As for the main Push dialog, the auto-checking is done for branches that are tracked only. If new local branches are being automatically checked, it's because they are configured for tracking. You can check this by performing 'git remote show <remotename>'.
I just did a few tests here, and new branches created in SourceTree were not automatically checked in the push dialog, and 'git remote show' did not include them in the section "Local refs configured for 'git push'". The only case when SourceTree auto-checked them was if they appeared in that section. Maybe something in your workflow is causing them to be set up as tracked branches?
Indeed you are correct on the new branches not automatically being checked in the push dialog. I think it must be our workflow and we're looking to update it accordingly.
Thanks for the speedy response and we'll look forward to the update.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.