I will play again my subversion (replacement of CVS http://www.linuxjournal.com/article.php?sid=4768) card here.

 

CVS is a bad example of advanced CM system. One of its deficiency is directory versioning. Subversion will fix that. Clearcase has had that for a long time.

I know that some of you guys are going to start telling me again that IntelliJ should not invest time in integrating with every VCM system. And I would agree as long as IntelliJ provides a VCM interface that is the superset of all important DEVELOPMENT features of VCMs out there (I insist on DEVELOPMENT because not all features of a VCM would be used by a developer on a day to day basis).

Directory versioning (rename/move a file/directory) is such very important feature that should be taken very seriously by the IntelliJ guys:

1) It cannot be integrated with the current External Tool api because you would invoke a rename through the Rename/Move refactoring command.

2) It makes your “agile” development staff more productive as a whole.

 

I think IntelliJ’s main competition is now coming from eclipse. The upcoming 2.0 release of eclipse (same timeframe as Ariadna release) will include support for VCM aware move and rename.

 

Clearcase and subversion have a mv command. Eclipse will use it on its refactoring. IntelliJ should do the same.

 

Franckly I have been a huge proponent of IntelliJ up to now but I will have a hard time staying with it even though I think it is much better otherwise, once eclipse release their new VCM plugin API with rename support.

 

The smart move from IntelliJ and they do not lack smart people would be to provide as soon as possible an open VCM API so people can integrate their own CM. We use CVS and clearcase. We would easily build a clearcase plugin.

Again I am not asking for a complete open api for intellij, just the vcm aspect. In addition the VCM API could evolve without a lot of impact on users. For example it could only address the move case for now. Then they could migrate current features to the VCM API one by one. People would migrate their External tool integration into the VCM API.

 

Sorry for the long post but it is an important issue. Our group is now 150 java developers. We haven’t decided yet on which IDE we are going to standardize (IntelliJ or Eclipse) but the sooner this things comes the more people will start working on Ariadna and be hooked on it.

 

 

Why do we do a lot of rename/move: We use eXtreme Programming as our development methodology. XP tells us to do the "Simplest thing that possibly work". So we start with a few package and only split packages when it becomes too big. We also are not afraid to change the name of a class if it does reflect its new responsibility.

 

Why is directory versioning so important: it makes my team more efficient and my development process simpler. If you do a lot of move/rename like we do (see footnote why) and use CVS to do parallel development with collective ownership of the code you want to have the underlying VCM system know about move and rename if it is capable (CVS won’t). That way if 2 people concurrently change the name of a file and change its content the VCM would still know that we are speaking about the same file when its time to merge the 2 changes. I can do my rename anytime and I do not have to lock the VCM to be able to safely move something. Most likely without it I would not repackage/rename my software which in an XP environment would have a very negative impact on quality.

 

-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Fedor Karpelevitch
Sent:
Thursday, March 07, 2002 3:39 PM
To: '[EMAIL PROTECTED]'
Subject: RE: [Eap-list] cvs and refactoring...

 

It is in context menu -> Refactor -> Move... or simply F6 (Is that from NC?

:-)

 

--

fedor.

 

----

Learned men are the cisterns of knowledge, not the fountainheads.

 

 

> -----Original Message-----

> From: Keith Chew [mailto:[EMAIL PROTECTED]]

> Sent: Thursday, March 07, 2002 1:20 PM

> To: [EMAIL PROTECTED]

> Subject: RE: [Eap-list] cvs and refactoring...

>

>

>

> I cannot find a Move Classes method.

>

> Keith

>

> -----Original Message-----

> From: [EMAIL PROTECTED]

> [mailto:[EMAIL PROTECTED]]On

> Behalf Of Fedor Karpelevitch

> Sent: Tuesday, 5 March 2002 5:46 p.m.

> To: [EMAIL PROTECTED]

> Subject: Re: [Eap-list] cvs and refactoring...

>

>

> create the new folder (com/abccompany/message)

> select all classes in the old package, do "Move classes" and

> select the new

> package as destination. you get the result yo wanted

>

> ����������� 04 ���� 2002 05:58 pm, �� ��������:

> > Hi fedor

> >

> > Maybe I did not make myself clear.

> >

> > I want to rename a folder. What is the best way to do this

> in IntelliJ? eg

> >

> > I want to change:

> >

> > com.mycompany.message

> >

> > to

> >

> > com.abccompany.message

> >

> > I cannot use the refactor feature of IntelliJ because the

> folder is CVS

> > controlled.

> >

> > Keith

> >

> >

> >

> > -----Original Message-----

> > From: [EMAIL PROTECTED]

> [mailto:[EMAIL PROTECTED]]On

> > Behalf Of Fedor Karpelevitch

> > Sent: Tuesday, 5 March 2002 11:01 a.m.

> > To: '[EMAIL PROTECTED]'

> > Subject: RE: [Eap-list] cvs and refactoring...

> >

> >

> > CVS does not allow you to remove directories. So IDEA

> should not remove

> > anything.

>

> _______________________________________________

> Eap-list mailing list

> [EMAIL PROTECTED]

> http://www.intellij.com/mailman/listinfo/eap-list

>

>

> _______________________________________________

> Eap-list mailing list

> [EMAIL PROTECTED]

> http://www.intellij.com/mailman/listinfo/eap-list

>

 

_______________________________________________

Eap-list mailing list

[EMAIL PROTECTED]

http://www.intellij.com/mailman/listinfo/eap-list

Reply via email to