Could I Create A Standalone Git Client From IDEA?

Answered

I like the IDEA diff and the VCS changes view etc.
However, sometimes I am working on projects that are outside of IDEA but I would still like to use the IDEA git integration to make my life simpler.
The only problem is, (as far as I can tell) you have to create a project before you can start working with version control.
As soon as you do that you start polluting your project with .idea files etc

Would it be possible to extract out just the VCS and Diff parts of IDEA to make a standalone tool, then modify it so that project info is stored in the home dir instead of the projects themseleves?

Or is there another way of working like this with IDEA?
Adding to .gitignore is not want I want as I often clean up my workspace to remove unversioned and ignored files so I would have to keep setting up the project in IDEA again.

13 comments
Comment actions Permalink

You can already create a project in your home dir and keep module files there too, while actual module content root would be your project files under git control.

0
Comment actions Permalink

I'm so used to all the project config being with the project I never thought about this!


Theoretically now, would it be possible to create a standalone client from the IDEA platform?
It would have to be faster starting and lower memory than IDEA though.

1
Comment actions Permalink

Why not? But please keep it mind that IDEA works via command line Git client for the most part, so you still need to have command line git client.

If you are looking for the standalone Git GUI in Java, try http://www.syntevo.com/smartgit/ .

0
Comment actions Permalink

@serge

The problem with the syntevo client is that it isn't free, or at least it doesn't seem like it.
The problem with using IntelliJ (community or otherwise) is that it adds project files to the directory.
I work with a team of excellent System Administrators and Business analysts, and they are all too overworked to learn how to use the command line and IntelliJ (Community and Ultimate) is by far too complicated for this simple use case.

If this could be a tool similar to TortoiseGit, but with the indexing and merging capabilities  available in a simplified GUI, that would be the ideal GIT tool for everyone else who is not a developer, coder, or engineer.

0
Comment actions Permalink

@opticyclic searches

 

Would you be interested in working on creating something like what you were describing here? I certainly don't have the expertise to do a good job on my own, but I've been wanting to get something rolling anyways.

0
Comment actions Permalink

Bit of a necro-post but anyway....

Short answer:

in theory I would be interested, in practice no

Long answer:

This is where I went with this. 

I started off with IDEA because it provides the best features for this. However, it quickly became clear that it wouldn't work as the IDEA platform isn't designed to be stripped down to such a small application. Also, you would really want the VCS Tool Window to be a full wiindow and that was a bit awkward.

I didn't bother looking at eclipse because it's version control and diff is a pile of poo.

"I know lets use a single colour for all different types of diff!".

"Fantastic idea! Lets make it a light grey colour so its really hard to see!"

I looked at Netbeans because it is very modular, however, I bumped into 2 issues there.

1) It isn't logical. In order to define the menus of your application your source code describes what to remove from the standard menus! So by looking at the code you have no idea what the menus are.

2) Their dev community is terrible. I asked a simple question on their dev list and didn't get a response for 6 months.

So in the end I gave up and when I wanted version control in a project not managed by IDEA I ended up using Serges suggestion of having a separate project elsewhere.

I also have GitKraken installed now for some things, but although it looks nice it has fundamental flaws like not being able to edit while diffing.

0
Comment actions Permalink

Yes, this is a bit necro; I posted despite the necrosis because you were the only other person that I've seen state that they want something like this, and I was hoping you would reply. And you did! Thank you so much (:D)!

I think you are right, and that It would have to be a full window as opposed to integrating it with windows explorer like Tortoise SVN. That would also allow it to work on more platforms. So maybe it could be like a custom file browser?

What I really like about the IDEA VCS window is the merging window and editing capabilities. GIT is already much better at merging than other tools I've used, and the IDEA features are the cherry on top.

Anyways, I get that you can't work on something like this, or that the platform can't really be stripped down like I want, but a Developer can dream, so I'm still going to keep my vote on this idea for IDEA.

2
Comment actions Permalink

@Keith Hoopes

I share your dream! It would be really nice to have a standalone IDEA Git client.

If someone has an experience in developing something like this, I am ready to provide my full support.

3
Comment actions Permalink

@Sumit Anantwar


Why wait for someone with experience?

We could just get started and fumble our way through it.

It would be fun!

2
Comment actions Permalink

Sure! It would indeed be fun!

And I think we may keep using this same thread for posting our findings, this way we may even gather some supporters.

For starters, my best guess would be to dive into the IntelliJ-Idea Community repo.

https://github.com/JetBrains/intellij-community

0
Comment actions Permalink

I add my vote to a JetBrains git gui. I'm crippled now when I have to try to figure out how to do things on the command line that I can do with a single menu item click in idea/phpstorm/webstorm

0
Comment actions Permalink

i would also like to see an standalone jetbrains git client - like the smartgit - but jetbrains driven. 

0
Comment actions Permalink

There is a request to make standalone git client in the tracker, see https://youtrack.jetbrains.com/issue/IDEA-152437

3

Please sign in to leave a comment.