Git Integration

Compatible with  IntelliJ IDEA
05.05.2009
11 105
Provides integration with Git version control system

Download plugin

Version

Update date

Recent change notes

Version 2.4 just fixes a few more minor issues, mainly with push/pull operations.

General usage instructions

Requires external Git command line tool to function. Cygwin is recommended on Windows. Configure the location of the \'git\' command in the project settings Version Control tab using the \"Configure VCS\" button for the Git VCS.
08.07.2016
it should be possible to diff file that was changed in merge commit with any parent version of it in the right pane with changed file list. not only one of them. ie right click compare with aaaaaa parent commit, compare with bbbb parent commit
28.08.2015
I really like the "branches... > master > compare" functionality, but I usually work in a git repo which is just enormous (100s of contributing engineers) with tons of remote branches. This seems to dramatically slow down display of the "branches..." dialog, when all I really want to do is immediately select and compare with master. It would be great to add a shortcut for this action to avoid costly, slow git ops.
16.10.2014
How about adding new feature: set upstream for new branch? Like on a popup where I enter the name for new branch there could have been have a chechbox "Set upstream to" and if it is checked, dropbox would appear with all branches available.
27.09.2013
I love the plugin except the fact the file colors are extremely hard for me to read when using the darcula theme. I Would like the ability to change the colors.
29.08.2013
Is there a way to contribute to the plugin?
Anonymous
23.10.2012
Does most GIT command line options, but i can't see tags, only branches when i want to perform a pull. How does one specify a tag for a pull request using the provided dialog? Same issue for the GitHub plugin.
04.07.2011
does this mean that to use this plugin, I have to
1.) install cygwing (and download all cygwing crap)
2.) sync/get the git?

if I am using cygwin, why don't I not use the git directly form there ?
28.02.2011
These keyboard mappings are have proven intuitive for my team:

Push: CTRL + ALT + Page Up
Pull: CTRL + ALT + Page Down

Could they be made the default mappings for Push and Pull in the Git plugin?
23.11.2009
Started seeing this bug today when trying to commit. Any ideas? Thanks.

git4idea.envs.GitCheckinEnvironment.commit(Ljava/util/List;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;: git4idea.envs.GitCheckinEnvironment.commit(Ljava/util/List;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
java.lang.AbstractMethodError: git4idea.envs.GitCheckinEnvironment.commit(Ljava/util/List;Ljava/lang/String;Ljava/lang/Object;)Ljava/util/List;
at com.intellij.openapi.vcs.changes.ui.CommitHelper$CommitProcessor.process(CommitHelper.java:9)
at com.intellij.openapi.vcs.changes.ChangesUtil.processItemsByVcs(ChangesUtil.java:268)
at com.intellij.openapi.vcs.changes.ChangesUtil.processChangesByVcs(ChangesUtil.java:273)
at com.intellij.openapi.vcs.changes.ui.CommitHelper$CommitProcessor.callSelf(CommitHelper.java:37)
at com.intellij.openapi.vcs.changes.ui.CommitHelper.b(CommitHelper.java:22)
at com.intellij.openapi.vcs.changes.ui.CommitHelper.access$200(CommitHelper.java:78)
at com.intellij.openapi.vcs.changes.ui.CommitHelper$1.run(CommitHelper.java:2)
at com.intellij.openapi.vcs.changes.ui.CommitHelper$2.run(CommitHelper.java:7)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:3)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:5)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:13)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:101)
at com.intellij.openapi.progress.impl.ProgressManagerImpl$6.run(ProgressManagerImpl.java:16)
at com.intellij.openapi.application.impl.ApplicationImpl$5.run(ApplicationImpl.java:8)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:637)
at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:5)
Anonymous
16.10.2009
Great thing! But how about submodules? Without this feature this plugin is useless for me.
Anonymous
12.08.2009
Hi,

Do I misread that I can use the git integration plugin with Idea 6.0?

>2.4. 6.0 (5000) . 6.0 (7999) .

I have the following error situation:

* install the plugin git4idea 6835
* shutdown idea
* restart
* idea hangs with the \"splash screen\"

I have stack traces if these present seem
interesting..

thanks,

bill


16.07.2009
IDEA 8.1 comes with Git4Idea bundled in. Git4Idea v2.4 only works with up to IDEA v8.0.x, so you'll need to delete the plugin jar that's been downloaded. It should be under \Users\username\.IntelliJIdea8x\... That will make it revert back to the system one in the installation folder.
Anonymous
15.07.2009
I have the plugging installed and I have already configured the path to Git on IntelliJ settings, but when I click on Test button, I get the following exception (using windows vista, IntelliJ 8.1.3 and plugging version 2.4)

Error during dispatching of java.awt.event.MouseEvent[MOUSE_RELEASED,(654,120),absolute(654,209),button=1,modifiers=Button1,clickCount=1] on dialog0
java.lang.AssertionError
at git4idea.config.GitVcsPanel.testConnection(GitVcsPanel.java:63)
at git4idea.config.GitVcsPanel.access$000(GitVcsPanel.java:37)
at git4idea.config.GitVcsPanel$1.actionPerformed(GitVcsPanel.java:48)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6216)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3265)
at java.awt.Component.processEvent(Component.java:5981)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4583)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:35)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:223)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:217)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1051)
at java.awt.Dialog$3.run(Dialog.java:1103)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1101)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl$MyDialog.show(DialogWrapperPeerImpl.java:116)
at com.intellij.openapi.ui.impl.DialogWrapperPeerImpl.show(DialogWrapperPeerImpl.java:6)
at com.intellij.openapi.ui.DialogWrapper.show(DialogWrapper.java:889)
at com.intellij.ide.actions.ShowSettingsUtilImpl.a(ShowSettingsUtilImpl.java:37)
at com.intellij.ide.actions.ShowSettingsUtilImpl.showSettingsDialog(ShowSettingsUtilImpl.java:17)
at com.intellij.ide.actions.ShowSettingsAction.actionPerformed(ShowSettingsAction.java:5)
at com.intellij.openapi.actionSystem.impl.ActionButton.a(ActionButton.java:61)
at com.intellij.openapi.actionSystem.impl.ActionButton.a(ActionButton.java:89)
at com.intellij.openapi.actionSystem.impl.ActionButton.processMouseEvent(ActionButton.java:23)
at java.awt.Component.processEvent(Component.java:5981)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4583)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4556)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4220)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4150)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2475)
at java.awt.Component.dispatchEvent(Component.java:4413)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at com.intellij.ide.IdeEventQueue.c(IdeEventQueue.java:35)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:223)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:217)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)


THANKS!
13.03.2009
Version 2.3 remembers the last commit message now. I think most, if not all the outstanding issues have been addressed. Let me know if you see any problems.

Also, git4idea is now bundled with the IDEA v8.1 release (& being maintained by JetBrains). Prior IDEA versions will want to use my plug-in releases here.

thanks
Anonymous
26.12.2008
This plugin (or the one bundled with IDEA 8.1 EAP #9572) resets the commit message every time when pressing Ctrl+K. Could you restore IDEA's default behaviour, that the last commit message is remembered (both after a commit attempt and after pressing cancel; see IDEADEV-32987).
Please  sign in  to leave a comment.