Changes to VCS API between IDEA 10.x and 11
Hi,
Is there somewhere I can get a summary of what has changed in the VCS API between IDEA 10.x and 11?
Or any documentation on what is required (and not required) to implement a VCS plugin in IDEA 11?
Thanks, Sean.
请先登录再写评论。
There's http://confluence.jetbrains.net/display/IDEADEV/Developing+VCS+Integration+Plugins+for+IntelliJ+IDEA which is a bit old.
Use one of the open-source VCS plugins as sample:
https://github.com/JetBrains/intellij-community/tree/master/plugins/git4idea Git
https://github.com/JetBrains/intellij-community/tree/master/plugins/cvs CVS
https://github.com/JetBrains/intellij-community/tree/master/plugins/svn4idea SVN
Hope this helps a bit,
Yann
Hi,
Yes, I used that (old) link originally to develop the VCS plugin for IDEA 9. However it's completely out of date for what's required for IDEA 11.
I'm trying to base my changes on the GIT version, but the lack of documentation makes it hard to understand which classes/services are required.
IDEA 11 has changed from AbstractVcs to AbstractVcs<CommittedChangeList>. For this you appear to need a GitCommittedChangeListProvider, GitCommittedChangeList, etc.
What information you require in these is unclear.
Is there some architectural diagram available to explain how this all hangs together?
Thanks, Sean.
Sean,
getOutgoingProviderImpl() is optional API, you do not need to implement this if you don't want to. Simply use the base CommittedChangeList as the type parameter for your VCS.