Posts Tagged ‘VCS’

Better Line Endings Managing in IntelliJ IDEA 12

Wednesday, October 17th, 2012

It happens quite often, that version control is used by people working on different platforms. This is why problems with line endings may appear. If you ever read the article from GitHub, you might already know, that Git can automatically address these problems. You just need to set git config --global core.autocrlf true on Windows or git config --global core.autocrlf input on Linux and OS X.

However not everyone follows the instructions and setups VCS correctly. That’s why we have made a couple of improvements in IntelliJ IDEA 12 to make life easier.
(more…)

Git Branches for Multi-root Projects

Thursday, August 2nd, 2012

Sometimes there is a need to have multiple Git repositories within a single project. Since long ago IntelliJ IDEA is able to execute many Git operations on all roots at once: Commit, Update Project, Push. Now multi-repository support has come to branches.

In IntelliJ IDEA 11.1 we have implemented two different approaches for multi-root branches. (more…)

Simpler and more powerful UI for Git branches

Wednesday, March 21st, 2012

Lightweight and fast branches are one of the major features and advantages of Git. We in Jetbrains want to make workflow with branches even more convenient and simple than it is in command line.

You might have noticed that in IntelliJ IDEA 11.0 we’ve added new interface to checkout branches from Git. In IntelliJ IDEA 11.1 we have polished the look and feel, and made it more functional. The main goal of new interface is to concentrate on the most common use cases. Let’s take a look at the features which the IDE offers to manage Git branches.

(more…)

Perforce integration enhancements in IntelliJ IDEA 11.1

Tuesday, March 6th, 2012

IntelliJ IDEA 11.1 will bring several changes with regard to VCS support and one of them is a number of enhancements in Perforce integration.

1. Handling Move

We used to handle rename/move operations using integrate. This was not quite convenient: for example, it made viewing history more difficult in external Perforce clients. Now that Perforce has a dedicated move command, we use it when possible. We hope this will save you some nerves and time.

2. Faster Changes Update

Another enhancement relates to Changes view refresh performance. In some cases refresh action took unfairly more time than necessary. Now it should be quicker.

3. Empty Changelists

And at last one more tricky improvement which may make your work with Perforce more transparent. After some operations a changelist might hover in pending state as empty but not visible in the IDE. Now IntelliJ IDEA does not hide such changelists to let you delete them. This also is quite useful since it keeps you from accumulation of empty changelists in Perforce.

All these changes are already available in the latest IntelliJ IDEA 11.1 EAP build.

Please let us know if you have any questions or ideas here or in our bug tracker.

Start using SVN 1.7 with IntelliJ IDEA 11.1, EAP build 116.32

Monday, March 5th, 2012

New IntelliJ IDEA 11.1 EAP build (116.32) is available with Subversion 1.7 support finally built in. Here are some details on the current implementation.

We don’t perform automatic upgrade of your working copies to version 1.7, you can easily do it manually (Changes | Subversion Working Copies | Change).

(more…)

New in 11: Git log gets more power

Monday, November 14th, 2011

The most exciting news for me is that now in forthcoming IntelliJ IDEA 11, we show Git revisions graph!

Now that IntelliJ IDEA can visualize commits links, we’ve added context actions to tag a commit, create (and checkout) new branch, and checkout a selected revision.

I want to specifically mention the highlight actions — now you can see what commits are in “ancestors subgraph” for a selected commit. By default, IntelliJ IDEA shows HEAD subgraph, i.e. you see what commits you have in your working tree now.

It is really convenient when you are checking what commits went into some tag (or branch).

To find any commit in git log (in already shown part), use the new “Goto Commit” action — type commit hash, or description fragment, or branch or tag name, and be navigated to it.

And, finally — when browsing history, sometimes you work with a set of commits and need to track this set.

Now you can mark commits by simply pressing Space and they get stared.

New in 11: Diff Tool for Binary Files

Thursday, November 10th, 2011

Did you know that IntelliJ IDEA 11 Diff Tool supports some of binary contents? Now, it’s not a problem to see changes from file history or a change list. Every binary content you’re able to open in IntelliJ might be compared in Diff Tool: UML diagrams, SWF files, of course images, and much, much more.

New in 11: Changes digest for easier pre-commit review

Friday, September 9th, 2011

As for me, after a few years of working in a huge project inside a big team, I became concerned about accidentally breaking the project.

That’s why every time I commit something, I double-check my changes.

In the forthcoming IntelliJ IDEA 11 EAP, I have a special “digest” changes presentation for that!

It helps me in my last pre-commit check immediately inside the commit dialog:

And I also use it all the time when coding, to recall my changes:

NB: to see the digest of changes in Changes | Local, use the new “Change Details” toolbar button.

To tell the truth, even when I was in the middle of this “digest” changes feature, I simply couldn’t live without it, so I compiled a build of IntelliJ IDEA for myself and used digest view while developing the digest view!

IntelliJ IDEA 11 EAP is to be announced any day now. Stay tuned!

Control your Perforce connection

Wednesday, June 1st, 2011

In IntelliJ IDEA 10.5 we’ve improved setting up your Perforce server connection and connection state diagnostics.

Configuring connections

If you are using P4CONFIG files for configuration, IntelliJ IDEA shows what config files it has found and what other default settings are used. This way you can be sure that your P4CONFIG files are found and taken into account.

Use the ‘Test Connection’ button in ‘Settings | Version Control | VCSs | Perforce’ to see this information.

Moreover, in case you specified a wrong client workspace and your project roots do not match with the workspace roots, you are also clearly prompted:

Perforce connection parameters dialog

If you are not authenticated to the server or the authentication ticket has expired, you will be notified accordingly:
Not logged to Perforce notification

Offline mode

Once Perforce server becomes unavailable, IntelliJ IDEA switches to the offline mode automatically and displays an offline notification.
"Perforce is offline" notification

In the offline mode, you can continue working locally as usual, file checkouts are remembered by IntelliJ IDEA to be further re-played. When going online IntelliJ IDEA requires that you authenticate on the server and the ticket is not expired. This is important to re-play you offline edits properly.

New in 10.5: Check TODO, patch into shelf & GNOME Keyring

Tuesday, April 5th, 2011

There’s been a number of new things we’ve added in IntelliJ IDEA 10.5 related to version control support. You can try them already in a latest EAP build. And here’s a quick overview.

Do not forget things… TODO!

Now you can easily ensure you haven’t forgotten to implement a method, and double-check the important places in your code before commit. Just mark those places in code with TODO.

IntelliJ IDEA’s new “Check TODO” before commit inspection will notify about all new and edited TODO items.

It will also confirm about TODO items in the changed fragments (in case they are not actual any more).

You can use TODO filter with this inspection — if you want to pay attention only to TODO items of a special kind.
"Check TODO" before commit handler option in Commit dialog

You can further review TODO items in the changed lines:
Review TODO items in changed code

Import patches into IntelliJ IDEA shelf

You can now import a patch into shelf.

It is quite useful when you review someone’s code and use patches for communication.
Import action in Shelf context menu

Later, you can unshelve it using the new detailed Unshelve… action, which opens a dialog similar to ‘Apply Patch’ and allows setting any bases for the patch parts (in case some files or directories had moved since then).

You can also import patches directly from the Apply Patch dialog.

Subversion. GNOME Keyring support

GNOME Keyring support has been implemented by svnkit, so you can use it in IntelliJ IDEA now.

As svnkit folks say, it is in experimental phase, and a special JVM key should be used to enable it. So, please read the details.

This is it for now. Let us know what you think.

And make sure you are using the latest IntelliJ IDEA 10.5 EAP build when you get to try these and other new features.