Perforce changelists not picked up in 5218

In 5218 (and the previous build), Perforce changelists are not picked up in either the "Changes" tab, or in the "Commit Project" screen. All changes are shown under the "Default" changelist.

These same changelists are picked up fine in 5.0.

-Bruce

8 comments

Hello brucet,

We've implemented our own changelists stuff and decided not to use perforce
onces. That way we get changelist support for version ctonrols that do not
originally support changelists like CVS or SVN.

Does this solution have real use case drawbacks for perforce users?

-


Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"


0

Hello Maxim, thanks for the response.

All changes in Perforce must be checked in with a Perforce changelist, it is not possible to simply check in a list of files. How does the new support work? Does IDEA automatically create a new Perforce changelist upon checkin?

This would be a problem because there are Perforce-specific features that are sometimes included with a changelist that probably will never be supported in IDEA. For example, you can associate Perforce "Jobs" with a changelist (these may be bugs linked to a bug system, or other tasks). At my company we have triggers on our perforce server that will reject any changelist that is checked in without a Job attached to it.

I think ideally IDEA would integrate with the native version control's changelist functionality, and add the new support for those like CVS and SVN that do not come with it.

Thanks,
-Bruce

0

Hello brucet,

IDEA only creates a new changelist if files being commited span across multiple
perforce changelists and commits the original one if they all reside in single
changelist.

Well, jobs are indeed the problem. We'll consider synchronize functionality
for the perforce changelists.

-


Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

Hello Maxim, thanks for the response.

All changes in Perforce must be checked in with a Perforce changelist,
it is not possible to simply check in a list of files. How does the
new support work? Does IDEA automatically create a new Perforce
changelist upon checkin?

This would be a problem because there are Perforce-specific features
that are sometimes included with a changelist that probably will never
be supported in IDEA. For example, you can associate Perforce "Jobs"
with a changelist (these may be bugs linked to a bug system, or other
tasks). At my company we have triggers on our perforce server that
will reject any changelist that is checked in without a Job attached
to it.

I think ideally IDEA would integrate with the native version control's
changelist functionality, and add the new support for those like CVS
and SVN that do not come with it.

Thanks,
-Bruce



0

If I'm understanding you correctly, this is a serious degradation in
Perforce functionality--or of any other VCS that supports changelists,
it seems to me. Files that are check out at the same time are most
definitely NOT necessarily all part of the same unit of work. For
example, I may interrupt work on an enhancement to fix a defect in an
unrelated part of the system. As changelist support was previously
(correctly) implemented, I could keep those tasks separate and be sure
that only related sets of changes (those that are part of the same
changelist) would be committed together.

The whole point of changelists is that they make it easier to ensure
that files that changes that are committed as a unit truly ARE an atomic
unit of change against the system. You're making that harder (at the
very least, by forcing Perforce users back to a Perforce client to
manage any but the simplest workflows).

This doesn't look like a feature to me--it looks like dumbing down VCS
support to the least common denominator.

Maxim Shafirov (JetBrains) wrote:

Hello brucet,

IDEA only creates a new changelist if files being commited span across
multiple perforce changelists and commits the original one if they all
reside in single changelist.

Well, jobs are indeed the problem. We'll consider synchronize
functionality for the perforce changelists.

------------------
Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"

>> Hello Maxim, thanks for the response.
>>
>> All changes in Perforce must be checked in with a Perforce changelist,
>> it is not possible to simply check in a list of files. How does the
>> new support work? Does IDEA automatically create a new Perforce
>> changelist upon checkin?
>>
>> This would be a problem because there are Perforce-specific features
>> that are sometimes included with a changelist that probably will never
>> be supported in IDEA. For example, you can associate Perforce "Jobs"
>> with a changelist (these may be bugs linked to a bug system, or other
>> tasks). At my company we have triggers on our perforce server that
>> will reject any changelist that is checked in without a Job attached
>> to it.
>>
>> I think ideally IDEA would integrate with the native version control's
>> changelist functionality, and add the new support for those like CVS
>> and SVN that do not come with it.
>>
>> Thanks,
>> -Bruce


0

Hello Michael,

If I'm understanding you correctly

You don't. We've implemented our own changelist support, which have approximately
the same features Perforce has but for any VCS. All that multiple work items
and atomic commits are supported. We've just decided to skip synchronizing
Perforce native changelists with our internal ones.

-


Maxim Shafirov
JetBrains, Inc
http://www.jetbrains.com
"Develop with pleasure!"


0

Maxim Shafirov (JetBrains) wrote:

Hello Michael,

>> If I'm understanding you correctly

You don't. We've implemented our own changelist support, which have
approximately the same features Perforce has but for any VCS. All that
multiple work items and atomic commits are supported. We've just decided
to skip synchronizing Perforce native changelists with our internal ones.


I haven't tried this but it sounds like a bad idea. We have lots and
lots of infrastructure built around changelists here and I don't think
people will appreciate a new kind of changelist (we already have OCL and
CL for submitted CL's).

Also, how do you do atomic commits for CVS? I thought it was impossible.

0

Also, how do you do atomic commits for CVS? I thought
it was impossible.


CVSNT actually implements atomic comits, but that's outside JetBrains control. What they're probably doing is trying a "fake" (-n) commit first, and if no potential conflicts or outdated files are reported, do the real commit. This is still not guaranteed to be atomic, but should take care of the very common case of a commit interrupted by an outdated file.

0

Using Perforce here at work I am also a little concerned with removing supported features from the Perforce version control. I had just gotten used to having all those features available. I will come back and chime in if the new 5218 approach affects my workflow negatively (or positively for that matter).

0

Please sign in to leave a comment.