There are two major schemes in SCC. Lock-Commit, and Merge. It seems most text based languages don't bother with Lock-Commit since an intelligent text merge can be done pretty easily. Since LabVIEW's VIs are binary, a merge can't really happen on a file level. The Compare and Diff tool NI has made does help, but I've found it at times to be messy. A more rigid approach is the Lock-Commit. This works best when an application has been broken up into sub modules, most often Libraries, or Classes. Then multiple developers can work on separate files at the same time, but lock them so that the file can only be edited by one person at a time. This does take the cooperation of all developers. Blanket statements like "Don't lock the whole project" needs to be something everyone does. Otherwise you will be calling up someone telling them to unlock the files they have. I've gotten used to this over the years, but if you are a new to LabVIEW and you have 1 or 2 huge VIs, then locking them to one user will cause problems.
As mentioned NXG uses XML as the file format (with a few binary blobs when needed) and merging them in text has some varying level of success. But with a relatively complicated XML file merging might not always do what the developer expects.