Advanced Collaboration features

When collaborating on a project, there would be a fear that some collaborator may overwrite some work that someone else may have done. There are several ways to handle this fear.

Note that, as explained in the main topic on collaboration, you need to set all the TAD files that you are initially distributing with all the changes you would make. i.e. Do all the suggestions here before the collaborators start their work. This cannot be done later, as it would be too cumbersome to manage.

1. Use COLLABALT
What if you wanted 2 or more architects to work on the same sub-project? This happens when you want more nuanced alternatives. In the previous set of steps, it was assumed that each architect worked ONLY on his/her own sub-project by locking the appropriate class inside TAD.

But TAD is more powerful.

An architect can simple set another Project Property field: This one is called “COLLABALT” and give a unique value to that. So now that architect's class branch data that gets saved would incorporate that COLLABALT value too! If you want to now merge that architect's work, you too should set the same property in your own TAD file; before merging.

Once you set COLLABALT, then theoretically you can extend the limit beyond 75 too! (as multiple people would be working on the same sub-project) As you may have guessed; you can have 75 sub-projects for collaborating on inside a TAD model!

You can use this COLLABALT feature to act as a “password” too - if you are worried that some in the team may fool around with a sub-project not assigned to him/her. In such a case each of those 6 architects (in the above example) gets a subtly different copy of the same TAD file. The difference being that each TAD file will have its own unique COLLABALT value

2. Making sure COLLABFOLDER respects the sub-project being worked on
As you may have learned by now; there are two ways to specify the value of the field COLLABFOLDER in the TAD's Project Properties You need to anyway set this field in your TAD's Project Properties for collaborations to wok.

Do this for shared folders on your computer or LAN
One method is by giving the actual absolute path of some local folder or a shared folder on your office LAN for the field COLLABFOLDER in the TAD's Project Properties. The added nuance now is that you can specify the sub-project that particular collaborator can work on; by specifying that sub-project's class name after the absolute path of the folder separated by a comma

Do this for online folder that you can get from us
The other method (which is very useful when your collaborators are disbursed across the Internet) is to obtain a collaboration folder from us. Get one from here: https://tad.in.net/collab

When you fill the form there; make sure that you use the appropriate form multiple times; and specify each sub-project's class name for each and ever sub-project in that TAD file. Each sub-project would get a different code and you should use that code in each collaborator's COLLABFOLDER field value in its respective TAD file and ONLY then should it be sent to that collaborator for that person to start work.


Both the methods described above ensure that the collaborators will be able to save ONLY the branch of the sub-project they have been assigned


3. Automatic synchronization of folder changes
When collaborating using your computer's own folder; or a shared folder on a LAN, there is a neat way by which TAD can automagically pick up changes that is happening in that folder and update the TAD model without you having to do any work at all. This is extremely useful – else you would have to remember to merge other people's work into the TAD model that is worked on

This is extremely useful when you have some other mechanism for updating the contents of the folders from others. Say you have a GIT or SVN repository somewhere and you synchronize that repository with this collaboration folder (i.e. the collaboration folder on your computer becomes the repository working folder of your version control system) In such a case; GIT or SVN would be bringing in the data that your collaborators are producing for each sub-project in the TAD model. By having this automagic merging of other people's work directly into your own TAD model is extremely useful - as you don't have to do any work as such to ensure that all the collaborators work come smoothly into your own TAD file that is opened for that project.

This capability is available inside TAD by simply specifying a “Dir watch token” in the Application preferences This token can be obtained by filling a form here: https://tad.in.net/collab (Of course you need to set the COLLABFOLDER. You can add the other recommended suggestions too, if you want)