License question

We just started testing things on the “starter” license. One of the users accidentally committed a branch that had 1,000s of commits (from many users that are no longer at the company). IT didn’t realize what happened and just updated the license to trial to get around the hangup.
Once we realized what the developer did, I realized that it did convince subgit that we had more than 10 users pushing to git. We’ve since deleted that branch in our git repo. Will we still be able to use the starter license? Or are the pushed users tracked within subgit?

I’m afraid yes, SubGit does track pushed users, so the branch deletion solely won’t resolve the issue. There’s a way to workaround that, however: if those users are not longer active, then they may be mapped to the same Git name in authors mapping file, like:

<svn user> = Git User <>
<svn user> = Another GitUser <>
<svn user> = Third User <>

With this configuration SubGit won’t be counting those Git users as separate committers and thus 10 users license will be possible to use.

Thanks, is there a way to extract out all of the known users?

You mean all the counted users? That can be done with the following command:

subgit register --print-committers <Path to repo>

It will print all the registered committers.

Great, thanks! One more quick question if you have an answer available. We aborted the process in subgit and deleted the branch in gitlab and now we have directories in branches called “in”, “into”, “completed” in our svn
branches​ folder. Is it safe to delete those?

Frankly said, I’m not sure what those folders are, SubGit does not create such directories in ‘branches’ for mirroring – actually, it does not create any directories in the repository. So I can’t tell for sure if it’s safe, might be some new code, I assume.

OK, it’s possible it’s some other artifact from the bad commit we did. Thanks for your time!

Following up on this. We ended up just buying a 25 seat license, but we didn’t have the authors mapping setup when we added our repositories. That I think has caused us to again hit a 25 seat limit when we only have 5-6 active users. How can we reset the
license count so that we can get the rest of our team using this? Will just updating the authors map reduce those old committers that were already counted?

We only need to have about 15 users that will be using this, but that old branch import has bitten us to where we keep hitting this limit.

OK, learned a little more about this. Besides the old users that we were dealing with, we also have the case where all of our new users have two entries, one with “user name” and the other with “username <” This is
due to that initial bad branch commit that committed a bunch of users that were on a branch. What can we do to clean this up so that we can use our license. We really can’t justify getting a 50 seat license to just serve a dozen or so developers.



this issue can be resolved by mapping all the users in the authors mapping as it was described in this my previous message:

Namely, all the Git users must be mapped to SVN users and the Git names, that belong to the same developer, must be mapped to the same SVN username. This will make SubGit only count all those names as one licensed user. No more actions are needed, SubGit will recognize the authors mapping change and apply it automatically.
Note, however, that SubGit counts users across all the mirrored repositories on the same server, so if you have 15 users in one repository, but more than 25 total, then the issue will appear again.

Thanks, so we have one user that has three entries when we run the subgit register --print-committers command that you sent previously
Jeff Wilson
Jeff Wilson

If we update the authors file, to have these entries:
jwilson = Jeff Wilson
jwilson = Jeff Wilson
jwilson = jwilson

That will give us back 2 extra license seats? If so, I will try this out later today when our IT person gets into the office.

Yes, that’s right, such authors mapping should free two license seats up.

Thanks! I misunderstood how it worked the first time you mentioned it.