Perhaps you have already heard, and if not, then it's time to find out that the other day we released the
first official release of Upsource .
What is Upsource?
Upsource is a tool for viewing VCS repositories, navigating through them, as well as for discussing and reviewing code (code review). Upsource is designed to be installed on the company's own server and is able to work with the Git, Mercurial, Subversion and Perforce repositories.
In Java projects, Upsource additionally performs code analysis in the same way as IntelliJ IDEA does, and also offers Find IDages, Go to Declaration and Type Hierarchy functions familiar with IDE.
')
If you remember, in August we
announced the program of early access to Upsource, but now we live to see the release. It is worth noting that before the release, we thoroughly thought about licensing and pricing, and eventually we came to the conclusion that the license for small teams - up to 10 users (8 regular users, 1 guest and 1 administrator) - will be completely free. For larger teams, a range of commercial licenses are offered from 25 users.

What does Upsource do, and what can't it do?
About what is suitable for Upsource, and for what is not, we are quite detailed
in the summer, announcing the EAP . In short, the main functions of the product now are:
- viewing changes in the Git, Mercurial, Subversion and Perforce repositories;
- search by change history and by code in any revision;
- code reading (syntax highlighting of most popular languages is attached);
- discussion of changes and individual code fragments;
- full code review with several roles, and, unlike earlier builds, now review can be performed both on individual revisions and on whole branches of Git and Mercurial, in which case new revisions are added to review automatically;
- for Java projects - code analysis, additional search and navigation capabilities (including Go to Declaration and Find Usages).
In
the same summer post it was told what Upsource is not. In particular, Upsource does not work on the SaaS model and must be installed on your own server. Also, the product is not VCS-hosting, and therefore does not allow opening branches, creating pull requests, checking merge conflicts, and actually merging branches. The good news is that work on Git-hosting within Upsource is already in full swing.
To get an idea of Upsource in its current form in 8 minutes, you can
watch a playlist on YouTube .
What has changed in recent months?
We so often refer to the announcement of the program of early access, as if nothing has changed in the product since then. This is certainly not the case. The most important changes since August are the following:
- Branch review. Now code review on branches is created in one click, and as new revisions appear in the branch, they are automatically included in the review.
- UI for comparing arbitrary revisions or branches.
- More accurate highlighting of changes: in particular, changes inside lines of code are now highlighted, and in Java projects the context of changes is formed depending on the structure of the code in which it occurred.
- Reports on the review of the code in the project: the number of reviewed revisions relative to their total number, review status, main reviewers.
- Standard functionality for administrators: backup / restore and transfer to read-only mode, necessary to update the product version without completely stopping its services.
- Integration with any bug trackers at the level of creating links by request ID.
- Markdown support in the comments.
For whom and for what is Upsource best suited now?
All of the above is great, but the question arises: is Upsource suitable for you personally? It seems to us that it is worth trying Upsource if your team (or company) answers at least one of the following characteristics:
- Develops Java projects using Maven and / or IntelliJ IDEA. (Gradle support promises to be in the next release.)
- It uses several different VCS from the list of supported (Git, Mercurial, Subversion and / or Perforce) and wants to get a uniform UI to view the changes and navigate through the code in their projects.
- Has the ability to install Upsource on its own server.
How much is?
As already mentioned, a 10-user license is free. In addition, free licenses are available on request for non-commercial OS projects and for use in the educational process.
It also provides commercial licenses for 25, 50, 100, 500 and 1000 users, starting at $ 1,300. Commercial licenses always include 1 year of free updates; An optional extension of this period will cost 50% of the cost of a new license.
It should be borne in mind that regardless of the number of users in a particular license, one of the accounts will be administrative by default, and one will be guest. Guest can optionally be disabled. Thus, 10 users = 8 users + administrator + guest; 25 users = 23 users + administrator + guest; and so on.
Where to get?
You can download the product
from here ; Read the prices
here .
Ask your questions, of course, you can in the comments to this post.