The Projucer wont write over your shared schemes. We also use the .jucer file to track our project changes. Although it’s possible to build without the schemes option by using the target option I don’t recommend it as I’ve found a couple of oddities with xcodebuild when you don’t!
To see what I mean try the following. In xcode do a build and take a copy of all the exported symbols. Then using xcodebuild call your command without the scheme option but pass in the extra option “-showBuildSettings” now if you compare the two they should be identical except some temporary file paths. Great you might say exactly what you expect… but now run xcodebuild without the -showBuildSettings command, and compare that with the other two.
You should’ve notice a couple of differences, from memory it’s something to do with the derived data path. I’ve no idea if this is a bug or not (although it certainly seems like it), unfortunately due to the protection we use and a pre-build script we have to call when adding that protection it caused us some serious issues that took quite a while to track down. Essentially this other script was calling xcodebuild with the -showBuildSettings command and was getting the path to the derived data wrong, but only on command line builds. This resulted in it throw a wobbly about something later on in the script. Unless your adding protection of the same nature you’re probably not going to hit this issue but as a result I would still recommend sharing the schemes.