At TMate Software, we are devoted to making your life easier. Even though we don’t give all out our products for free, we’re trying to make our pricing and licensing system as flexible, transparent and cost-effective, as possible. Here’s a comprehensive guide to it.
There are currently 4 license types for SubGit.
The purpose of this license is to get you acquainted with all features and advantages of SubGit. You may use it for 30 days with any number of Git committers or repositories. After that SubGit will stop working. Your repositories will not be harmed, but you will not be able to push new commits to the branches in your Git repository, that are mirrored with SVN.
This is a free license for small teams. You can use it for as long as you like, but only if you have no more than 10 unique committers to Git. The maintenance period is 12 months. You may obtain a new license every 12 months for as long as you need it.
This is the main SubGit license. It is also perpetual (not time-limited), and the price depends on the number of Git committers and the maintenance period (could be 12, 24 or 36 months).
If your company is producing Open Source software, and you can prove by a link to your public repository, you can obtain a free Open Source license for one year. It’s not limited the number of committers, but you can use it on 1 repository only. In a year SubGit will stop working, but you may apply for a new license.
Number of Git committers
Depends on the license tier
12, 24 or 36 months
Number of repositories
Any (on one server)
Depends on the tier and maintenance period
If all you need is to perform a one-time import of your SVN repositories to Git, you may use SubGit without any license — just download the software from the website and run
$ subgit import.
Terms and limitations
Starter and Enterprise licenses are perpetual. Once you obtain them, you can use SubGit forever (provided all other conditions are met).
Trial and Open Source licenses work for a limited time only. After such license expires
you will not be able to push new commits to the branches in your Git repositories, that are mirrored with SVN;
however, background fetching new revisions from SVN will continue.
Starter and Enterprise licenses have a limited number of Git committers, also called a «license tier».
Each time someone pushes a commit to a Git repository, where SubGit mirror is running, SubGit counts the total number of committers, based on 3 conditions
they have pushed to this or any other Git repository on the same server;
where SubGit is installed and registered by the same key;
within 365 days back from the current date.
New in version 3.3.4
SubGit is now counting committers, not authors!
What’s the difference?
If the total number of committers, including the one that attempts to push, is within the limits of the license tier, then the push will go through and be synced with SVN.
If the committer who attempts to push is the one that exceeds the number of committers, allowed by the license tier, then his or her push will be rejected with a warning message.
All other committers, that have pushed within the previous year, may continue pushing new commits.
Background fetching new revisions from SVN will continue.
New in version 3.3.4
If the total number of committers is equal to the license tier limit, only pushes from new committers are rejected.
For Enterprise Unlimited license (maximal tier) the number of Git committers doesn’t matter. It can be used with any number of Git committers.
SVN users mapping
SubGit only counts the number of users, who push to Git repositories. The number of SVN users doesn’t matter.
New in version 3.3.4
If multiple Git committers are mapped to the same one SVN user in the authors.txt file, they count as one.
When a new Git committer is beyond the license tier limit, his or her pushes are rejected.
If there are more than one Git committers mapped to the same SVN user in authors.txt, they count as one. The number of SVN users doesn’t matter.
If the total number of committers is somehow exceeded (even not counting the one who is attempting to push), then all new pushes to all SubGit repositories on that server will be rejected, until this situation is fixed.
This is a very rare case, that can only happen if two users have pushed commits to two different Git repositories on the same server at the same time, and each one of them alone was not exceeding the limit.
All SubGit licenses include basic support (by email) and free software updates during the maintenance period. When the maintenance period ends, holders of Starter or Enterprise licenses may keep using SubGit, but they won’t be able to update it anymore.
Support and updates are deeply interconnected. Every year we release several new versions of SubGit with new features and improvements, based on issues and requests we receive from our customers. This is why we recommend all users to have active maintenance at all times.
Severs and repositories
Most SubGit licenses are per server. That means you can have any number of SubGit repositories on the same server, registered with the same key.
There are two exceptions:
Enterprise Unlimited license (maximal tier) is company-wide — it can be used on any number of servers within one company.
Open Source license is limited to 1 Git repository. If you have several repositories, you may apply for several such licenses — as long as they are all open-source.
The size of my team have never exceeded the license tier, but I had staff changes within the last year - some people left, new ones came.
We have no control over your staff schedule, so we set a reasonable amount of time, after which we do not count a person as an active user - that is one year. If your new staff members are exceeding the tier limit, you may either obtain a higher tier license or map them to the same SVN accounts as the old ones. See Authors Mapping Manual for details.
- I somehow managed to get beyond the tier limit, and now all my Git repositories are blocked.
Obtain a higher tier license or map several of your Git committers to the one SVN account. See Authors Mapping Manual for details.