I have the same question. I thought I could prevent activities uploading to Strava by just not syncing (until later, of course, but when I'm on a computer and not on a mountaintop or something). But then two activities went immediately to Strava when I hadn't even synced. I'm trying to find a way to send some activities to Strava and withhold others.
Now I know how to make an activity private on Strava - but some activities I don't want to appear...ever. Even when I finish I ride, I usually like to "upload" it when I'm home and can give it a title and add photos.
The Garmin to Strava thing is great, but I just don't want it to happen until I "make" it happen...if that makes sense. I thought syncing was the thing that made it happen, but then I learned the embarrassing way, it's not.
The easiest way is to change your settings on Strava so all sessions upload as private. Then no one sees it until you go in and change the privacy setting for each session. You can do whatever changes you want and then make it public so people can see it when you want them to see it.
This is what I do. Everything syncs automatically, but is private until I say otherwise (in most cases I make my activities public).