I've read Mike's "VCS Integration Philosophy" article - are there
other references for the VCS stuff?
In the AbstractVcs interface there is a checkinFile(), but no
checkoutFile(). Why is that?
In the article it says that the concept of "current sources" is
important, but does not define that concept completely. Is that what
I'm missing?
Thanks,
Neil
The concept is the same as traditional workspace driven VCS like CVS. In CVS you update your workspace with the latest changes, make your change directly without dealing with CVS and when you are ready to commit your changes you do so in one operation. With IDEA it is similar: You invoke your custom VCS update operation, Mark your Project as Current and let IDEA track your changes. IDEA itself does not need to know about the underlying VCS until you try to checkin your changes. At that point IDEA will replay all your changes through the VCS Api. This allows a cleaner and simpler model to deal with the diversity of VCS. If your VCS requires checkout before modifying a file, just implement a custom CheckOutAction that will deal with the VCS properly. However it was decided to make the VCS OpenAPI as simple as possible. Trying to track all different quirks of every VCS would be too much work.
Hope this helps
Jacques
Neil Galarneau wrote:
In the AbstractVcs interface there is a checkinFile(), but no
checkoutFile(). Why is that?
Checkout is written as a regular action, not making use of AbstractVcs.
The only methods now in AbstractVcs are those required by the Check In Project
action: check in, add, remove, etc.
--
Erb
==============================================================
"Most of you are familiar with the virtues of a programmer.
There are three, of course: laziness, impatience, and hubris."
- Larry Wall
==============================================================
So the checkout abstraction is different from the checkin abstraction?
What? Why?
What interfaces do I need to implement in order to integrate a VCS
with IDEA?
Thanks,
Neil
On Wed, 21 Aug 2002 10:27:50 -0400, Erb <dont@evenbother.com> wrote:
>Neil Galarneau wrote:
>> In the AbstractVcs interface there is a checkinFile(), but no
>> checkoutFile(). Why is that?
>
>Checkout is written as a regular action, not making use of AbstractVcs.
>The only methods now in AbstractVcs are those required by the Check In Project
>action: check in, add, remove, etc.
Proof that ITN messages are not replicated on to the news groups. Beware!
Maybe my post will help you out. Look for it at
http://www.intellij.net/forums/thread.jsp?forum=6&thread=5386
Jacques
"Neil Galarneau" <neil@codemesh.com> wrote in message
news:5se7mugjgmigruqqgm3q9ieg2h770r62bv@4ax.com...
So the checkout abstraction is different from the checkin abstraction?
>
What? Why?
>
What interfaces do I need to implement in order to integrate a VCS
with IDEA?
>
Thanks,
>
Neil
>
On Wed, 21 Aug 2002 10:27:50 -0400, Erb <dont@evenbother.com> wrote:
>Neil Galarneau wrote:
>> In the AbstractVcs interface there is a checkinFile(), but no
>> checkoutFile(). Why is that?
>
>Checkout is written as a regular action, not making use of AbstractVcs.
>The only methods now in AbstractVcs are those required by the Check In
Project
>action: check in, add, remove, etc.
>