An author is a single identity on a source code repository. An identity is plainly the identifier used by an user when he does a commit. The authors are therefore identified when Themis does its analysis on the source code repositories.
Concretely, what does that mean?
Here a schematic example with 2 code source repositories, with for each 3 authors.
We have here 2 sources and a total of 6 authors. Even if two identical names are found on 2 different repositories, it is behind 2 authors well separate. Yet, at first sight there is good chance that we only have 2 real persons (Alice and John) as contributors of these repositories.
Merger and association to a Developer profile
To allow Alice and John to be perceived as the set of their respective authors, Themis offers a mechanism of merger of the authors. It is to consider a set of authors as an only and single author.
In Themis, it materializes by the fact that in a set of merged authors, there would be a "super-author" toward which all the other authors are joined. It is that "super-author" towards which a Developer profile will be joined. In the diagram below:
Our 6 authors have been gathered in 2 separate groups, with every time a super-author, respectively J. Doe and Alice in that example.
Thus, the Themis user matching John will have to join to J. Doe, and the one matching Alice will have to join to the Alice author.
Automatic merger by Themis
By default, Themis will merge the authors originating from several authors originating from several sources and that have and an identical name. Furthermore, Themis is robust to the use of identifiers coming from Microsoft Server area.
Thus, "MYDOMAIN\camille" and "camille" will automatically merged by Themis.
The use of tags on the profiles of the users may also allow the automatic merger of authors.
Comments
Please sign in to leave a comment.