Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Greg A. Woods [EMAIL PROTECTED] writes:

 There is no trigger for cvs rm and there MUST _NOT_ be.

 There is no trigger for cvs add and there MUST _NOT_ be.

Please defend your position for 'MUST NOT' as it seems an entirely
reasonable suggestion that additional triggers might wish to be imposed
by a repository administrator.

Today, there is no direct trigger for 'cvs rm'. I do not have strong
feelings about adding one because existing clients do not yet talk to
the server for this operation which only becomes visible when the user
does a commit and a user could always work around the prohibition of
doing a 'cvs rm' by truncating the file to zero length and committing
that which will not matter most of the time.

Today, there is no direct trigger for 'cvs add', however, a 'cvs add' of
a directory at present is not possible to stop and there are some
administrators who would like to impose standards on directory names in
the repository. For example, some folks would like to impose the 'no
spaces allowed in directory names' to make it possible to add modules
entries for all possible directories.

This same rational is also true for 'cvs import' which allows users to
specify lots of directories and files that only the loginfo script sees
after the fact with no checking to see if the vendor tag, version tag or
directory names or file names match those allowed by the policy of the
administrator. More than one user has requested a trigger for 'cvs
import' that gets called before everything just gets dumped into the
loginfo trigger. Others have suggested that a series of commitinfo and
taginfo may be suitable as an alternative to an importinfo trigger.

-- Mark
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFBnO3s3x41pRYZE/gRAhdJAKCCBNbUqYkAbG3Wb7UpXLEVVUfMHgCdHHU6
szKXthS/vS5XcP/ExzKlXFc=
=U1Cb
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Greg A. Woods
[ On Thursday, November 18, 2004 at 10:38:44 (-0500), Derek Robert Price wrote: 
]
 Subject: Re: add hook question (was Re: Problem with importing third-party 
 sources and adding/committing changes)

 Perhaps a -C option to `cvs add' similar to `cvs edit', where -C can
 be placed in the user's .cvsrc for the add command and the add will
 not be allowed unless the server contact and verification is successful.

Which of course is an extremely stupid way to implement something that
is done for the sole and lone reason of policy enfocement.   ;-)

It would be saner and safer and much Much MUCH simpler to just write a
wrapper script for the CVS client and require (through external security
measures, such as peer pressure and/or threat of dismisal) that everyone
always use the wrapper script.

Remember the very strongest bit of advice for using CVS is to update
and to commit early and often

(but of course only commit after compiling _everything_ one last time
and doing at least a few tests! :-)

(which of course implies that day-to-day work using CVS should never be
done directly on a baseline branch either, assuming the project needs a
working baseline at all times :-)

Any fears about early policy enforcement not being possible at cvs add
time are ungrounded and illogical in the context of how CVS is used in
general.  Also the fear about lack of a cvs add hook is pure
F.U.D. given that cvs rm also lacks a similar hook (and it lacks it
for the same reaons).

CVS add and rm commands are intended solely to change the state of
the working directory.  They MUST NOT require access to the repo or the
repo server.  They are no different than vi except that they change
metadata describing the state of the working directory instead of
changing the content of a file.

The fact that cvs add came to create a directory in the repository was
a hack that was implemented even before CVS supported the client/server
mode of operation; and it is a hack that was made simply to avoid having
to fix other implementation deficiencies in the code at that time.

Of course we went over all of this in excruciating detail the first time
this proposal was made and every time it's been seen since and all
because of one stick in the mud.

-- 
Greg A. Woods

+1 416 218-0098  VE3TCPRoboHack [EMAIL PROTECTED]
Planix, Inc. [EMAIL PROTECTED]  Secrets of the Weird [EMAIL 
PROTECTED]


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Greg A. Woods wrote:

 There is no trigger for cvs rm and there MUST _NOT_ be.

 There is no trigger for cvs add and there MUST _NOT_ be.


I have to admit, there is a certain logic to drawing the line at
triggers for repository changes, not workspace changes.  The user
should have total control over their workspace and the server
shouldn't be able to veto anything except changes to the repository.

This still requires that `cvs add' of directories not alter the
repository until commit.  It also reminds me that allowing `cvs add'
and `cvs rm' in a workspace without even write privs to the server has
been on my wish list for quite awhile (this enables complete patches
to be generated from a public repository by anybody).  I'm guessing
the proposal Greg is advocating would provide for this.

I also still would not object to the a `cvs add -C' convenience hook
which requested that the client contact the server and validate the
add.  Any team that valued this option significantly should find it
fairly easy to enforce a policy of placing `add -C' in users' .cvsrc
files.

Cheers,

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBnPCfLD1OTBfyMaQRAqsWAJ4hbqIedBH7fhcBXeNnErm/PXEsNQCfUgKo
Wv/HTA9wD1ZjrLPc4CMjB2k=
=GKMh
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Greg A. Woods wrote:

[ On Thursday, November 18, 2004 at 10:38:44 (-0500), Derek Robert
Price wrote: ]

Subject: Re: add hook question (was Re: Problem with importing
third-party sources and adding/committing changes)

Perhaps a -C option to `cvs add' similar to `cvs edit', where -C can
be placed in the user's .cvsrc for the add command and the add will
not be allowed unless the server contact and verification is successful.


Which of course is an extremely stupid way to implement something that
is done for the sole and lone reason of policy enfocement.   ;-)


Only if you view the policy enforcement as policing.  If you view it
as a development tool, it makes perfect sense.  I know that if Paul is
correct and his team can really generate days worth of work by adding
a file/directory with the wrong name and I were on his team, I would
be grateful for an automated check that I was doing the right thing as
I went along.

It would be saner and safer and much Much MUCH simpler to just write a
wrapper script for the CVS client and require (through external security
measures, such as peer pressure and/or threat of dismisal) that everyone
always use the wrapper script.


Maybe, but CVS already has the code to turn the file list, user
information, repository path, etc. into simple, script-digestible
chunks.  A wrapper script might have to duplicate those chunks of code
and possibly stay in sync with CVS as CVS metadata file details
changed.  A hook would be simpler in this regard and I know for a fact
that the current overhead of installing another hook in the feature
version of CVS is actually rather small.  As long as the check could
be avoided when necessary or desirable to allow disconnected operation
of `cvs add', I don't see why a well-written and complete patch for
this should be rejected.

Remember the very strongest bit of advice for using CVS is to update
and to commit early and often


This is true.

CVS add and rm commands are intended solely to change the state of
the working directory.  They MUST NOT require access to the repo or the
repo server.  They are no different than vi except that they change
metadata describing the state of the working directory instead of
changing the content of a file.


I still back you on this, but also still have absolutely no problem
with an optional check.

The fact that cvs add came to create a directory in the repository was
a hack that was implemented even before CVS supported the client/server
mode of operation; and it is a hack that was made simply to avoid having
to fix other implementation deficiencies in the code at that time.

Of course we went over all of this in excruciating detail the first time
this proposal was made and every time it's been seen since and all
because of one stick in the mud.


Let's see a patch!

Cheers,

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBnPQZLD1OTBfyMaQRApYmAJ49iaP8MU/RrnRm6NmlIW46Je5ESQCeNClV
O2J48YBd7tXZmLQWD5WRKng=
=hSOJ
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-partysources and adding/committing changes)

2004-11-18 Thread Todd Denniston
Me Too post
Derek Robert Price wrote:
 
 Greg A. Woods wrote:
 
  There is no trigger for cvs rm and there MUST _NOT_ be.
 
  There is no trigger for cvs add and there MUST _NOT_ be.
 
 I have to admit, there is a certain logic to drawing the line at
 triggers for repository changes, not workspace changes.  The user
 should have total control over their workspace and the server
 shouldn't be able to veto anything except changes to the repository.
 
I believe this is the crux of the argument, the user should be allowed to do
anything they want to in their sandbox, but when they want to change the
repository their changes have to conform to any of the requirements of the
repository manager has.  The transition from sandbox to repository occurs at
commit time, so that is when the repository can and should impose it's will.

Greg's proposal, the way I read it, would move `cvs add` into conformance with
this.

SNIP some very nice reasons for Greg's proposal
 
 I also still would not object to the a `cvs add -C' convenience hook
 which requested that the client contact the server and validate the
 add.  Any team that valued this option significantly should find it
 fairly easy to enforce a policy of placing `add -C' in users' .cvsrc
 files.

I agree that this would be a nice _additional_ patch so the user could
validate early on that their information would go in, as it would only require
contacting the server in the case of sites where the users know the repository
admin has such rules in place, and commit would allow the ENFORCEMENT of those
rules. I suspect that a determined user could fake enough information into the
CVS/* files to get around the add, but it should be much more difficult to get
around commitinfo because all files at that point are under the cvs server's
control.

-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane) 
Harnessing the Power of Technology for the Warfighter


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hi Greg,

Is it reasonable to suggest that a addinfo trigger could be run as a
part of the 'cvs commit' command should the client not happen to connect
to the server for a 'cvs add' operation?

The idea would be that having simpler triggers for various kinds of
policy makes the administration of a repository easier.

In a similar manner a trigger for 'cvs rm' could be implemented to
impose policy.

The timing of WHEN those triggers get invoked is what seems to be the
sticking point for folks... Like Derek, I would not mind a hack to allow a
the users to perform a check that all is well... perhaps a 'cvs -n commit'
should run those validation checks?

I have no objections and would in fact LIKE to see disconnected
operations for 'cvs add' if possible. I also suspect that changes to the
'cvs import' mechanism would aslo be useful.

For that matter, I would like to see disconnected 'cvs diff' commands
where possible for users that already have a CVS/Base/* version of the
file around...

-- Mark

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFBnPcXDsmuPPFOO2cRAnR1AJ9Vha96Z8s/KN2EIONy3nfZlLlxnQCfVXh2
z7ADxJYod501tENFm8PtN7k=
=ksnC
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-partysources and adding/committing changes)

2004-11-18 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Todd Denniston wrote:

I also still would not object to the a `cvs add -C' convenience hook
which requested that the client contact the server and validate the
add.  Any team that valued this option significantly should find it
fairly easy to enforce a policy of placing `add -C' in users' .cvsrc
files.


I agree that this would be a nice _additional_ patch so the user could


Absolutely.  I intended this as a suggestion for a potential
additional patch which I would find acceptable if submitted.  I in no
way meant to imply that it be a condition for acceptance of any patch
generated as a result of Greg's proposal.

validate early on that their information would go in, as it would
only require
contacting the server in the case of sites where the users know the
repository
admin has such rules in place, and commit would allow the ENFORCEMENT
of those
rules. I suspect that a determined user could fake enough information
into the
CVS/* files to get around the add, but it should be much more
difficult to get
around commitinfo because all files at that point are under the cvs
server's
control.


Exactly.

Cheers,

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBnPhzLD1OTBfyMaQRAki7AJ9YaLWKRJ27ut92CRB3SbJ8RLDvBACeNViR
4AX2p3ruMlYSBKDf0uW3Cgk=
=l83S
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Mark D. Baushke wrote:

 Hi Greg,

 Is it reasonable to suggest that a addinfo trigger could be run as a
 part of the 'cvs commit' command should the client not happen to connect
 to the server for a 'cvs add' operation?


It should probably run regardless since it would be much simpler than
securely tracking whether the add on the client side had contacted the
server.

 The idea would be that having simpler triggers for various kinds of
 policy makes the administration of a repository easier.

 In a similar manner a trigger for 'cvs rm' could be implemented to
 impose policy.


Sure, but again, not by default.

 The timing of WHEN those triggers get invoked is what seems to be the
 sticking point for folks... Like Derek, I would not mind a hack to
 allow a
 the users to perform a check that all is well... perhaps a 'cvs -n
 commit'
 should run those validation checks?


That's a good point (and I believe that `cvs -n ci' will aready run
any validation checks in place on the commitinfo hook), but allowing
them to run from `cvs add -C' might be slightly more convenient and I
still argue should be a simple enough addition after Greg's change.

 I have no objections and would in fact LIKE to see disconnected
 operations for 'cvs add' if possible. I also suspect that changes to the
 'cvs import' mechanism would aslo be useful.


Yep.

 For that matter, I would like to see disconnected 'cvs diff' commands
 where possible for users that already have a CVS/Base/* version of the
 file around...


Yep.  I'm actually tempted to have the CVS client always create the
CVS/Base files for just this reason.  I think that `cvs diff' against
the base revisions is by far the common case but I hadn't completely
convinced myself that it was worth the overhead of the duplicate files
yet.  It would have the secondary side effect of allowing `cvs unedit'
in disconnected mode even when files had not been `cvs edit'ed and
should be another fairly simple change.  :)

Cheers,

Derek
- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBnPrgLD1OTBfyMaQRAiUkAJ0Rr6JrhZgssbhGzfHU9YNRq6Ca0gCg0f/W
Jx3gFST6+PiJNmU6SkiN3nM=
=8yfS
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Derek Robert Price [EMAIL PROTECTED] writes:

 Mark D. Baushke wrote:
 
  Hi Greg,
 
  Is it reasonable to suggest that a addinfo trigger could be run as a
  part of the 'cvs commit' command should the client not happen to connect
  to the server for a 'cvs add' operation?
 
 
 It should probably run regardless since it would be much simpler than
 securely tracking whether the add on the client side had contacted the
 server.

Good point.

  The idea would be that having simpler triggers for various kinds of
  policy makes the administration of a repository easier.
 
  In a similar manner a trigger for 'cvs rm' could be implemented to
  impose policy.
 
 
 Sure, but again, not by default.

Sure.

  The timing of WHEN those triggers get invoked is what seems to be the
  sticking point for folks... Like Derek, I would not mind a hack to
  allow a
  the users to perform a check that all is well... perhaps a 'cvs -n
  commit'
  should run those validation checks?
 
 
 That's a good point (and I believe that `cvs -n ci' will aready run
 any validation checks in place on the commitinfo hook), but allowing
 them to run from `cvs add -C' might be slightly more convenient and I
 still argue should be a simple enough addition after Greg's change.

Given we do not currently have those hooks, I have no objections to
considering a patch that does this.

  I have no objections and would in fact LIKE to see disconnected
  operations for 'cvs add' if possible. I also suspect that changes to the
  'cvs import' mechanism would aslo be useful.
 
 
 Yep.
 
  For that matter, I would like to see disconnected 'cvs diff' commands
  where possible for users that already have a CVS/Base/* version of the
  file around...
 
 
 Yep.  I'm actually tempted to have the CVS client always create the
 CVS/Base files for just this reason.  I think that `cvs diff' against
 the base revisions is by far the common case but I hadn't completely
 convinced myself that it was worth the overhead of the duplicate files
 yet.  It would have the secondary side effect of allowing `cvs unedit'
 in disconnected mode even when files had not been `cvs edit'ed and
 should be another fairly simple change.  :)

I recommend this be an option that could be requested by the user or the
default behavior switched by the CVSROOT/config file. I know of some
projects where there will be insufficient room to hold multiple copies
of the tree on disk at the same time and it might be desirable to allow
the administrator to default the behavior desired with the user able to
do an override.

-- Mark

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFBnPxcDsmuPPFOO2cRAvJ2AJwOpue91rw6uy0hMptvRjr0LIEzWQCeJtO8
qHi+1RzAcYqI0gQTISJ1dBU=
=2dsA
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Mark D. Baushke wrote:

 For that matter, I would like to see disconnected 'cvs diff' commands
 where possible for users that already have a CVS/Base/* version of the
 file around...


 Yep.  I'm actually tempted to have the CVS client always create the
 CVS/Base files for just this reason.  I think that `cvs diff' against
 the base revisions is by far the common case but I hadn't completely
 convinced myself that it was worth the overhead of the duplicate files
 yet.  It would have the secondary side effect of allowing `cvs unedit'
 in disconnected mode even when files had not been `cvs edit'ed and
 should be another fairly simple change.  :)


 I recommend this be an option that could be requested by the user or the
 default behavior switched by the CVSROOT/config file. I know of some
 projects where there will be insufficient room to hold multiple copies
 of the tree on disk at the same time and it might be desirable to allow
 the administrator to default the behavior desired with the user able to
 do an override.


Sure.

Cheers,

Derek
- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBnP5nLD1OTBfyMaQRAjNVAJ9dj1tGB3e0aO9e9gVHwOMYtQskbQCgmU7V
Y2C5Vx2Gp1tYwKjIgAFeSLk=
=7VuN
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

[ On Wednesday, November 17, 2004 at 09:19:18 (-0800), Paul Sander wrote: ]
 Subject: Re: add hook question (was Re: Problem with importing third-party 
 sources and adding/committing changes)

 It depends on the nature and extent of the changes.  I can easily imagine
 scenarios in which lost productivity would be measured in days, even
 assuming that all files are ASCII.

Your imagination is far too ripe with bizzare paranoia.

It's backed by many years of experience.

There is no trigger for cvs rm and there MUST _NOT_ be.

I wasn't going to mention this, but since you brought it up, removals should
also be triggerable events and the same philophy, whatever it is, should be
applied to both add-time and remove-time triggers.

I have experienced situations where users have removed and committed
stuff that had bad effects on the rest of the project.  Coworkers have
experienced user errors that cleaned out the entire source base of a
project, requiring many days to correct.  It's situations like this
where triggers like this are valuable because they can limit destructive
changes to users who know what they're doing.

There is no trigger for cvs add and there MUST _NOT_ be.

Again here we disagree.  Just because you can live without it doesn't mean
the rest of the world can.

We've already discussed how to add such a capability in such a way that
it involves zero overhead for those who don't want it:  Register no
triggers and defer their enforcement until commit time.  But for shops
that NEED them, they can register the trigger and turn off deferment.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

[ On Thursday, November 18, 2004 at 10:38:44 (-0500), Derek Robert Price 
wrote: ]
 Subject: Re: add hook question (was Re: Problem with importing third-party 
 sources and adding/committing changes)

 Perhaps a -C option to `cvs add' similar to `cvs edit', where -C can
 be placed in the user's .cvsrc for the add command and the add will
 not be allowed unless the server contact and verification is successful.

Which of course is an extremely stupid way to implement something that
is done for the sole and lone reason of policy enfocement.   ;-)

It would be saner and safer and much Much MUCH simpler to just write a
wrapper script for the CVS client and require (through external security
measures, such as peer pressure and/or threat of dismisal) that everyone
always use the wrapper script.

It's simpler, but neither safer nor saner to wrapper script around the
client.  The reason is this:  If you enforce policy but give the user
an avenue to circumvent it, the user will do so.  If you're serious about
enforcing policy, then you must have a way to build it into your tools
in a way that user cannot defeat.  In CVS (and indeed most if not all
existing version control systems), that means spawning trigger scripts
from within the tool, because wrapper scripts are trivial to defeat.

Remember the very strongest bit of advice for using CVS is to update
and to commit early and often

This is true, but it remains a common belief that nothing should be
committed until it's ready for unlimited use by the rest of the project.
As long as that paradigm holds, work will continue to be done for long
periods of time between commits.

Note that this is not what I teach, it's what I see.  I would never, ever
discourage someone from checking in their work, working or not (though I
may recommend doing so on a private branch).  But despite my teachings to
the user community of the folly of their ways, this we will commit no
line until its time mindset persists.

(but of course only commit after compiling _everything_ one last time
and doing at least a few tests! :-)

(which of course implies that day-to-day work using CVS should never be
done directly on a baseline branch either, assuming the project needs a
working baseline at all times :-)

Any fears about early policy enforcement not being possible at cvs add
time are ungrounded and illogical in the context of how CVS is used in
general.  Also the fear about lack of a cvs add hook is pure
F.U.D. given that cvs rm also lacks a similar hook (and it lacks it
for the same reaons).

Claiming that the hooks are not needed in the context of current use is
meaningless because the hooks do not currently exist.  Such arguments can
only be made if one can demonstrate that existing hooks are not used in a
meaningful way.

On the other hand, we have stated requirements where existing users find
existing capability to be inadequate.  This is compelling reason to add
the requested feature.

CVS add and rm commands are intended solely to change the state of
the working directory.  They MUST NOT require access to the repo or the
repo server.  They are no different than vi except that they change
metadata describing the state of the working directory instead of
changing the content of a file.

I define the add and rm commands as the actions required to make
CVS aware of new artifacts or to remove them from existing configurations.
How it does that is to me an implementation detail, and I don't care
whether or not the tool considers it necessary to contact the server.

However, in the event that triggers are added to track these events,
they must be added in such a way that user's can't defeat them by applying
more primitive operators or munging their environment.  To me, that means
building triggers into the server and making the client contact the server
at appropriate times to fire the triggers.  If there's a better way to
do it, I'm open to hearing it.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Paul Sander [EMAIL PROTECTED] writes:

 We've already discussed how to add such a capability in such a way that
 it involves zero overhead for those who don't want it:  Register no
 triggers and defer their enforcement until commit time.  But for shops
 that NEED them, they can register the trigger and turn off deferment.

Actually, your arguments in favor of deferment vs non-deferment are not
as compelling as the idea that 'cvs add' and 'cvs rm' should be local to
the tree until such time as a real 'cvs commit' event occurs.

Allowing the user to do checks ahead of time or defaulting that behavior
is a fine-detail that could be negotiated, but really any user has
control over their own environment, so the best you can provide is
advisory checks prior to commit time...

-- Mark

-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFBnUaD3x41pRYZE/gRAt1oAJ9SjyGJ2BZr+k7+g/5+vhaLVkKZYQCg3mwA
ae5mEw72wwi/BkkJWzZcmC8=
=8CqN
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

Greg A. Woods wrote:

 There is no trigger for cvs rm and there MUST _NOT_ be.

 There is no trigger for cvs add and there MUST _NOT_ be.


I have to admit, there is a certain logic to drawing the line at
triggers for repository changes, not workspace changes.  The user
should have total control over their workspace and the server
shouldn't be able to veto anything except changes to the repository.

There is a certain logic to having triggers gate changes to the
repository.  There's also a certain logic to having a tool prevent
conditions that will later cause it to fail.  Uncommitable changes
are such a condition, and it simply makes no sense to allow adds
to succeed when we know that committing those adds will fail.

There's another point I'll make but won't argue over:  There's a
limit to the amount of control a user should have, even over his
own workspace.  The user shouldn't be able to corrupt his metadata
to the extent that it causes failures, for example.

This still requires that `cvs add' of directories not alter the
repository until commit.  It also reminds me that allowing `cvs add'
and `cvs rm' in a workspace without even write privs to the server has
been on my wish list for quite awhile (this enables complete patches
to be generated from a public repository by anybody).  I'm guessing
the proposal Greg is advocating would provide for this.

Why is having CVS aware of source files an enabler for producing patches?

I also still would not object to the a `cvs add -C' convenience hook
which requested that the client contact the server and validate the
add.  Any team that valued this option significantly should find it
fairly easy to enforce a policy of placing `add -C' in users' .cvsrc
files.

I don't consider triggers to be conveniences.  If they are to enforce
policy then they can't be defeated by the user.  This is why I hate the
-n option of the checkout/commit/tag/update commands and advocate its
removal from CVS.  However, if applied to the add command, it is more
agreeable than the -C option as described above for human engineering
reasons.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-18 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

Derek Robert Price [EMAIL PROTECTED] writes:

 Mark D. Baushke wrote:
 
  Hi Greg,
 
  Is it reasonable to suggest that a addinfo trigger could be run as a
  part of the 'cvs commit' command should the client not happen to connect
  to the server for a 'cvs add' operation?
 
 
 It should probably run regardless since it would be much simpler than
 securely tracking whether the add on the client side had contacted the
 server.

Good point.

Yes!

  The idea would be that having simpler triggers for various kinds of
  policy makes the administration of a repository easier.
 
  In a similar manner a trigger for 'cvs rm' could be implemented to
  impose policy.
 
 
 Sure, but again, not by default.

Sure.

I think that it should be enabled by default, and the user can put the
-n option in his .cvsrc file for the affected commands, both for add
and remove.

The reasons for this:
- It maintains compatibility with existing commands.
- The user is caught just once when the trigger fires.  Recovery is to
  interrupt the client, edit .cvsrc, and re-run.  In the converse, the
  user must ask for policy enforcement, and may never get around to it
  in violation of the project's policy.

Unfortunately, there appears to be no way to countermand a -n option,
so the only way to turn it off is to edit the .cvsrc file.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-17 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Paul Sander wrote:

 Keep in mind that, although Greg does not acknowledge it, a number
 of people in this forum have stated a requirement for an add-time
 trigger that could be used for such things as enforcement of naming
 conventions and access control.  Such a feature (referred to in the
 past as addinfo) would reinstate the need to contact the server
 during additions.


I would personally be loathe to make any feature that doesn't require
a connection require one if it could be helped. In fact, I've actually
been thinking about disconnecting some of the other functionality,
such as cvs diff against the base version of a file.  Perhaps if the
connection failed and then the work was simply done locally, it would
be acceptable.

Why is an add hook considered to be an improvement over the hook that
runs at commit time?

Cheers,

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBm5+lLD1OTBfyMaQRAqmxAJ0U0EdgEPsRBuPgxeeW/OOwROQNfgCcDF8U
1w269ZRE/S0FrIIinzTCgxw=
=9brE
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-17 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

Paul Sander wrote:

 Keep in mind that, although Greg does not acknowledge it, a number
 of people in this forum have stated a requirement for an add-time
 trigger that could be used for such things as enforcement of naming
 conventions and access control.  Such a feature (referred to in the
 past as addinfo) would reinstate the need to contact the server
 during additions.

I would personally be loathe to make any feature that doesn't require
a connection require one if it could be helped. In fact, I've actually
been thinking about disconnecting some of the other functionality,
such as cvs diff against the base version of a file.  Perhaps if the
connection failed and then the work was simply done locally, it would
be acceptable.

It's fair to say that the client shouldn't gratuitously contact the server.
On the other hand, I think it's safe to say that several of us in this
forum disagree over what is gratuitous.  I happen to think that triggers
should run on the server, and therefore any triggerable event should
contact the server.

Why is an add hook considered to be an improvement over the hook that
runs at commit time?

It's true that add and commit hooks can enforce the same kinds of policies
as post-conditions of the commit.  However, add hooks can enforce things
like naming conventions.  I'm working in a shop right now that prefers to
have additions to the source tree (particularly new directories) be made
by the architects of the project rather than the rank and file, and such a
policy is best enforced at add time.

The reason why I say these are best done at add time is because if the
add succeeds then the user is likely to do a lot more work under the
assumption that the subsequent commit will succeed (or at least not fail
due to conditions created by the add).  If the commit fails due to an
improper add, then the user must re-do (or un-do) a bunch of work.  All
those hours of lost productivity could have been avoided by an add-time
hook.

The counter-argument is that CVS is not a project management tool, and
that if the conditions I describe above come to be then it must a problem
in that area.  But keep in mind that hooks exist to enforce policies set
by project management.  If you want to blame violations of policy on bad
management, then you might as well remove all hooks.  If you want
mechanized policy enforcement using hooks, then do it right, in all the
places where it's needed.  And I contend that add time is one place where
it's needed.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-17 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Paul Sander wrote:

It's true that add and commit hooks can enforce the same kinds of
policies
as post-conditions of the commit.  However, add hooks can enforce things
like naming conventions.  I'm working in a shop right now that prefers to
have additions to the source tree (particularly new directories) be made
by the architects of the project rather than the rank and file, and
such a
policy is best enforced at add time.

The reason why I say these are best done at add time is because if the
add succeeds then the user is likely to do a lot more work under the
assumption that the subsequent commit will succeed (or at least not fail
due to conditions created by the add).  If the commit fails due to an
improper add, then the user must re-do (or un-do) a bunch of work.  All
those hours of lost productivity could have been avoided by an add-time
hook.


This might be true, but it seems to me that most damage due to your
lost productivity could be fixed with a rename or two and maybe a
few `sed' runs, in a few minutes.  At least in an environment where
most of the files concerned were text files, as will usually be the
case using CVS.

It might be interesting to see Greg's patch, but yours wouldn't be a
big deal either, I think, as long as the add went forward without the
hook execution when the server could not be contacted.

Cheers,

Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBm8/HLD1OTBfyMaQRAk/LAJ9C6RM+GmI8dRsO2JTLatQp1XUC4ACgkzTO
9nJBYYY4EsgnEFAM1pyXINA=
=/dsD
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: add hook question (was Re: Problem with importing third-party sources and adding/committing changes)

2004-11-17 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

Paul Sander wrote:

It's true that add and commit hooks can enforce the same kinds of policies
as post-conditions of the commit.  However, add hooks can enforce things
like naming conventions.  I'm working in a shop right now that prefers to
have additions to the source tree (particularly new directories) be made
by the architects of the project rather than the rank and file, and
such a
policy is best enforced at add time.

The reason why I say these are best done at add time is because if the
add succeeds then the user is likely to do a lot more work under the
assumption that the subsequent commit will succeed (or at least not fail
due to conditions created by the add).  If the commit fails due to an
improper add, then the user must re-do (or un-do) a bunch of work.  All
those hours of lost productivity could have been avoided by an add-time
hook.

This might be true, but it seems to me that most damage due to your
lost productivity could be fixed with a rename or two and maybe a
few `sed' runs, in a few minutes.  At least in an environment where
most of the files concerned were text files, as will usually be the
case using CVS.

It depends on the nature and extent of the changes.  I can easily imagine
scenarios in which lost productivity would be measured in days, even
assuming that all files are ASCII.

It might be interesting to see Greg's patch, but yours wouldn't be a
big deal either, I think, as long as the add went forward without the
hook execution when the server could not be contacted.

The thing is, if there's a triggerable event, the trigger must be able
to halt the event.  Unplugging the network interface to enable adding a
directory is simply not acceptable.  On the other hand, requiring all
add hooks to be replicated at commit time would eventually catch the
error, and it could be argued that someone who attempts such tricks
gets what they deserve, but it's just easier and better all around to
just make the trigger act like a trigger.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question on modules file

2004-11-16 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Yamuna Ramasubramaniyan [EMAIL PROTECTED] writes:

 I have a problem using a directory name with a space
 in it in the modules file.
 
 Can the modules file not support spaces in the
 directory name?  

Correct.

Spaces in file and directory names are not well supported in CVS.

-- Mark
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFBmb+43x41pRYZE/gRArg3AJ99U5WICpjICQWygPaynnH+7EiZgwCg0bqx
MdUpe9W33X8wGvuvIUTclHk=
=htE2
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question regarding cvs admin

2004-11-16 Thread Godavarthi, Manasa
Hi,

I read it on info-cvs how to change a branchname using cvs admin commands.

I had to change a branch name and by accident I went into the repository(CVS 
ROOT) itself and executed the following command :

cvs admin -nNew_Branch_Name:Old_Branch_Name

And it gave me message saying Administering each module_name

I am not sure if I erased some repositories or changed something.

Please somebody tell me that nothing would have happened.

Thanks in advance,
Manasa


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question regarding cvs admin

2004-11-16 Thread Larry Jones
Godavarthi, Manasa writes:
 
 I had to change a branch name and by accident I went into the
 repository(CVS ROOT) itself and executed the following command :
 
 cvs admin -nNew_Branch_Name:Old_Branch_Name
 
 And it gave me message saying Administering each module_name
 
 I am not sure if I erased some repositories or changed something.
 
 Please somebody tell me that nothing would have happened.

It's hard to say.  If you really did what you said, you should have
gotten:

cvs [admin aborted]: there is no version here; run 'cvs checkout' first

So, either you're running a very old version of CVS, you didn't do what
you said you did, or your repository is (or appears to be) checked out
from another repository.

-Larry Jones

OK, what's the NEXT amendment say?  I know it's in here someplace. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question on modules file

2004-11-15 Thread Yamuna Ramasubramaniyan
Hello,

I have a problem using a directory name with a space
in it in the modules file.

I have the following line in my modules file:
Docs -d Eng-us Docs_src/Help\ Files

When I do cvs -d /home/cvs checkout Docs, I get an
error:
cvs [checkout aborted]: there is no repository
/home/master/ycvs/Documentation-Eng-us/HTMLhelp_full_version/HTML\

If I make the modules file as 
Docs -d Eng-us Docs_src/Help Files
I get:
cvs [checkout aborted]: there is no repository
/home/cvs/Docs_src

Can the modules file not support spaces in the
directory name?  

Thanks,
Yamuna



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Pvcs2Rcs Script capability Question

2004-11-12 Thread Derek Robert Price
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Please don't email me directly with CVS support questions unless you
are CC'ing the email list via a thread I've already entered
voluntarily.  Normally that will get you my stock form letter
suggesting that you purchase CVS support from Ximbiot if you want to
be sure someone will be able to answer your CVS questions on a regular
basis.  I manage to stay busy enough and don't normally have much
patience for people who think they are more likely to get a response
by mailing one of the CVS developers directly than by using the
mailing list or searching the mail archives.  I'm making an exception
in this case only because I did enter this thread recently and I am
adding info-cvs to the CC list for the benefit of the email archives
and therefore posterity.

The first time I used the pvcs2rcs script, when I added capabilities
to convert branches and fixed several other bugs, I was running it on
Windows via MKS's UNIX toolkit and using ActiveState's port of Perl to
Windows, though that was many years ago and I expect the free Cygwin
UNIX tools for Windows and its Perl would work as well now.

You should be able to run the script on any system where you have
Perl, PVCS,  RCS command line tools, regardless.

Please read the extensive comments in the header of the
contrib/pvcs2rcs(.in) file for more information on using the pvcs2rcs
script.  Much of this information was already in there.

Cheers and thank you in advance for respecting my time and privacy in
the future,

Derek

Paras jain wrote:

 !-- /* Font Definitions */ @font-face {font-family:Garamond;
 panose-1:2 2 4 4 3 3 1 1 8 3;} /* Style Definitions */ p.MsoNormal,
 li.MsoNormal, div.MsoNormal {margin:0in; margin-bottom:.0001pt;
 font-size:12.0pt; font-family:Times New Roman;} a:link,
 span.MsoHyperlink {color:blue; text-decoration:underline;}
 a:visited, span.MsoHyperlinkFollowed {color:purple;
 text-decoration:underline;} span.EmailStyle17 {font-family:Arial;
 color:windowtext;} @page Section1 {size:8.5in 11.0in; margin:1.0in
 1.25in 1.0in 1.25in;} div.Section1 {page:Section1;} --

 Hi Derek,

   One Small Question? Can I convert the PVCS archives 6.8 on Windows
 2000 to CVS archives in Linux from the script?

 Because Script is on LINUX box and How I give it the windows archives ?

  

 Thanks in advance

  

 Pars


Derek

- --
*8^)

Email: [EMAIL PROTECTED]

Get CVS support at http://ximbiot.com!
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFBlM1GLD1OTBfyMaQRArgQAJ0ZJKF9o+p0xaqxnehcidwQddaJnwCeLLRy
5vyWK0OehKh2w1q9JCKsIYc=
=TE9x
-END PGP SIGNATURE-



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: question about rtag command.

2004-11-10 Thread Lynch, Harold
Title: question about rtag command.



That 
works for the trunk, but I was looking at being able to tag the status of a 
branch
at a 
specified date/time.

Harold

  -Original Message-From: 
  [EMAIL PROTECTED] 
  [mailto:[EMAIL PROTECTED]On Behalf Of 
  Stuart StevensSent: Tuesday, November 09, 2004 5:08 
  PMTo: Lynch, Harold; [EMAIL PROTECTED]Subject: RE: 
  question about rtag command.
  
  Normally you would 
  use
  
  Cvs q rtag -D 
  datestring new tag module to 
  tag
  
  Stuart
  
  
  
  
  
  From: 
  [EMAIL PROTECTED] 
  [mailto:[EMAIL PROTECTED] On Behalf Of Lynch, HaroldSent: Tuesday, November 09, 2004 12:09 
  PMTo: 
  [EMAIL PROTECTED]Subject: 
  question about rtag command.
  
  
  Is it possible (with cvs 1.11.x) 
  to tag a branch by date? 
  I've tried a couple of permutaions 
  of 
  cvs -q rtag -r branchtag 
  -D datestring modulename 
  But I'm not sure if it is doing 
  what I think it's doing. 
  Harold Lynch 
  
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


question about rtag command.

2004-11-09 Thread Lynch, Harold
Title: question about rtag command.








Is it possible (with cvs 1.11.x) to tag a branch by date?


I've tried a couple of permutaions of


cvs -q rtag -r branchtag -D datestring modulename


But I'm not sure if it is doing what I think it's doing.


Harold Lynch



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: question about rtag command.

2004-11-09 Thread Stuart Stevens
Title: question about rtag command.








Normally you would use



Cvs q rtag -D datestring
new tag module to tag



Stuart











From:
[EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Lynch, Harold
Sent: Tuesday, November 09, 2004
12:09 PM
To: [EMAIL PROTECTED]
Subject: question about rtag
command.







Is
it possible (with cvs 1.11.x) to tag a branch by date? 

I've
tried a couple of permutaions of 

cvs
-q rtag -r branchtag -D datestring modulename 

But
I'm not sure if it is doing what I think it's doing. 

Harold
Lynch 






___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Merging question - from and to

2004-11-04 Thread Jeeva Sarma
Hi
I have a question about merging. I thought merging
with two -j options was 'from' revision and 'to'
revision.
This is what happened in my working area from trunk.

I have a file soa.pc, branched out at 1.2, now at
revision 1.2.4.1 on branch, and 1.2 on trunk. I
check-out from trunk, then do

cvs update -j 1.2.4.1 -j 1.2 soa.p
Nothing happens.

I then tried

cvs update -j 1.2 -j 1.2.4.1 soa.pc

RCS file:
/cvsrep/cvsroot/ACE/ace/audit/care/soa/soa.pc,v
retrieving revision 1.2
retrieving revision 1.2.4.1
Merging differences between 1.2 and 1.2.4.1 into
soa.pc

I also tried in another way, 

cvs update -j Br_CRMR2a_Dev soa.pc
Nothing.

Then
cvs update -j HEAD soa.pc
RCS file:
/cvsrep/cvsroot/ACE/ace/audit/care/soa/soa.pc,v
retrieving revision 1.2
retrieving revision 1.3
Merging differences between 1.2 and 1.3 into soa.pc

I don't understand how this works? Is the order
from-to or to-from or how are we supposed to give the
-j options? Pls clarify.

Thanks,
Jeeva


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Merging question - from and to

2004-11-04 Thread Pierre Asselin
Jeeva Sarma [EMAIL PROTECTED] wrote:

 I have a file soa.pc, branched out at 1.2, now at
 revision 1.2.4.1 on branch, and 1.2 on trunk. I
 check-out from trunk, then do

 [ ... ]
 cvs update -j 1.2 -j 1.2.4.1 soa.pc

Yes, like that.  The command means, merge all changes
that occurred between 1.2 and 1.2.4.1 into the working copy,
which is what you want.

What is confusing you is that there are *three* revisions involved:
the base of the changes to merge, here 1.2, the endpoint of the
changes to merge, here 1.2.4.1, and the working copy, which doesn't
need to be called out by revision because it is the file sitting
in your sandbox at the moment.  In your case, the working copy is
identical to the base, but this isn't always true.


 RCS file:
 /cvsrep/cvsroot/ACE/ace/audit/care/soa/soa.pc,v
 retrieving revision 1.2
 retrieving revision 1.2.4.1
 Merging differences between 1.2 and 1.2.4.1 into
 soa.pc

After which the soa.pc in your sandbox should be identical
to 1.2.4.1, but once again this was a special case because
your starting point was identical to 1.2 .


 cvs update -j HEAD soa.pc
 RCS file:
 /cvsrep/cvsroot/ACE/ace/audit/care/soa/soa.pc,v
 retrieving revision 1.2
 retrieving revision 1.3
 Merging differences between 1.2 and 1.3 into soa.pc

If you omit the first -j, it defaults to the most recent
common ancestor of the given -j and of the working copy.
Here HEAD means 1.3, because you or someone else committed
changes after you checked out the sandbox with 1.2 .
The common ancestor of 1.3 and 1.2 is 1.2 so once again
you end up with a special case where the base and the
working revision are identical.  You are grabbing the
changes from 1.2 to 1.3 and injecting them in 1.2,
the result being identical to 1.3 .

BTW, if you lose track you can always do
rm soa.pc
cvs update soa.pc

to get a clean copy of the HEAD of the moment.

-- 
pa at panix dot com
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question

2004-09-26 Thread Gleidson Sá Barreto
Now, I was reading a material about CVS technology and
I came across some doubts in concerns the some
concepts:

1-To take place the transfer of the files stored in
the repository q they were modified for your work
area, through a sicronização operation. Like this,
would to be in fact that sicronização operation? 

2-CVS counts with a mechanism capable to control the
simultaneous accesses and the parallel modifications,
guaranteeing like this the integrity of the
modifications and atomicity of the operations. Would 
be in fact that atomicity of operations? 

3-CVS possesses mechanism capable to identify and to
solve conflicts. However those identified conflicts
are merely textual, not existing any analysis of the
logical consistence. Here I didn't understand the
expression textual conflicts very well. 

obs:those concepts were retired of the book CVS of
Cristiano Caetano.





___
Yahoo! Messenger 6.0 - jogos, emoticons sonoros e muita diversão. Instale agora!
http://br.download.yahoo.com/messenger/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question

2004-09-26 Thread Pierre Asselin
Gleidson S? Barreto [EMAIL PROTECTED] wrote:

 1-To take place the transfer of the files stored in
 the repository q they were modified for your work
 area, through a sicroniza??o operation. Like this,
 would to be in fact that sicroniza??o operation? 

I'm not sure what you mean, but...  Synchronization in both direction
has to be requested explicitly, by running a command.  cvs update to
receive changes made by others, and cvs commit to send changes made
by you.


 2-CVS counts with a mechanism capable to control the
 simultaneous accesses and the parallel modifications,
 guaranteeing like this the integrity of the
 modifications and atomicity of the operations. Would 
 be in fact that atomicity of operations? 

If I remember correctly, commits are atomic within any one directory
but are not atomic across entire hierarchies.  Commits are certainly
atomic on a file by file basis, so you do not get corrupted files.

The lack of atomicity occurs when a developers performs an update
(receive) while another developer performs a commit (send).  The
receiving developer may get an inconsistent snapshot with some files
just before their commit and some other files just after the commit.
The workaround is to repeat the update.  It would be a little
difficult to notice in practice, because when working on an active
project one has to update many times every day.  Also, the trunk
tends to be somewhat unstable since it is being actively modified.


 3-CVS possesses mechanism capable to identify and to
 solve conflicts. However those identified conflicts
 are merely textual, not existing any analysis of the
 logical consistence. Here I didn't understand the
 expression textual conflicts very well. 

A textual conflict occurs when two people modified lines at overlapping
locations in a file, or at nearly overlapping locations (~3 lines
apart or so).  These conflicts have to be resolved manually.

Modifications in distant parts of the file are accepted uncritically.
You are correct that this could introduce logical errors in the merged
file;  the amazing thing is that it almost never does, because of the
way people write software.

In any case, cvs always gives you backup copies of the two conflicting
versions of the file.

-- 
pa at panix dot com
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question about chacl

2004-09-13 Thread JeffreyC
I'm trying to set permissions for a projectd using chacl and am unable
because the initial cvs checkout is apparently not work. We have a
large repository with many projects in place, and I've been using cvs
checkout for months now, usually for deployments and tagging; but for
some reason in this instance it is not working. Here's what I'm doing:

   cvs checkout -r HEAD ProjectName
  (This works fine)

   cvs chacl -R chacl cvsadmin:r ProjectName

  (This results in the following message:)
  cvs chacl: in directory .:
  cvs [chacl aborted]: there is no version here; do 'cvs checkout'
first

I can't even perform a simple listing of permissions using lacl on
that project -- that command returns the same message. Any suggestions
would be much appreciated. Some details:

OS: Windows Server 2003
CVS: CVSNT 2.0.38
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Question about chacl

2004-09-13 Thread Arthur Barrett
Jeffrey,

CVSNT has it's own mailing list:
news://news.cvsnt.org/support.cvsnt
Or
http://www.cvsnt.org/cgi-bin/mailman/listinfo/cvsnt

I suggest you ask there (and perhaps consider upgrading to the latest
release):
http://www.cvsnt.com

Regards,


Arthur Barrett

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On
Behalf Of JeffreyC
Sent: Tuesday, 14 September 2004 10:40 AM
To: [EMAIL PROTECTED]
Subject: Question about chacl


I'm trying to set permissions for a projectd using chacl and am unable
because the initial cvs checkout is apparently not work. We have a large
repository with many projects in place, and I've been using cvs checkout
for months now, usually for deployments and tagging; but for some reason
in this instance it is not working. Here's what I'm doing:

   cvs checkout -r HEAD ProjectName
  (This works fine)

   cvs chacl -R chacl cvsadmin:r ProjectName

  (This results in the following message:)
  cvs chacl: in directory .:
  cvs [chacl aborted]: there is no version here; do 'cvs checkout'
first

I can't even perform a simple listing of permissions using lacl on that
project -- that command returns the same message. Any suggestions would
be much appreciated. Some details:

OS: Windows Server 2003
CVS: CVSNT 2.0.38 ___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


question about helping cvs performance.

2004-09-10 Thread Lynch, Harold
Title: question about helping cvs performance.







I'm getting complaints from the users about the amount of time it takes to 

do a tag or a branch (especialy the branch).


Are there any standard things that can be done, or to watch out for, that

would make these functions run as well as possible?


Harold Lynch



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


rtag question

2004-09-08 Thread Lynch, Harold
Title: rtag question







will the command:


cvs -q rtag -D 2004-08-09 2:00 GMT -r SOMEBRANCHTAG SOMEMODULE


put a tag on branch SOMEBRANCHTAG as the files were at 2am GMT on August 9th 2004 ?


I was warned that tagging by date had problems on branches.


The version of cvs we are using is 1.11.15.


Harold Lynch



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question about process scheduling - revisited.

2004-08-31 Thread Lynch, Harold
Title: Question about process scheduling - revisited.







I originally had a question about the way cvs server process get scheduled.


Let me elaborate.


The setup:


 Server:

 DELL dual intel processor (2.0 gig hertz).

 4 gig ram

 500 gig harddriver.

 Dual gigabit and 10t network interfaces.


 CVS 1.11.15 server on this machine (pserver is the connection method).


Originally I thought it was a checkout time issue. But now I can see the occasional slow rtag. 


Normally it takes between 4 and 15 mintes to pull a sandbox, or about 15 minutes to rtag the same

module.


Occasionally we are seeing the checkout time jump to over 1 hour, or the rtag to take 2 hours.


When I look at the server process on that corresponds to this slow moving command, I see that it

seems to intermittenly get high then low cpu usage, and the total cpu time for that process keeps 

getting higher. But I've never seen it (in top) total peg the cpu's.


Now this repository is about 3.5 years old, and quite large (over 40,000) files, lots of branches, etc.


We've had the network people monitor that end, and they aren't seeing anything lost there.


Does anybody have any ideas on what to look for here.

Or is there pertanant information I have left out?


Harold Lynch



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question about RCS files

2004-08-26 Thread K. Posern

Hi.

I am a CVS newbie and I would like to do/have the following:

There is a Server with an CVS Repository sv in the path /var/lib/cvs/sv.

On the clients I work with:
CVSROOT=:ext:[EMAIL PROTECTED]:/var/lib/cvs;
LOCAL=/SOMEWHERE/sv;

CVS checkout is done by:
cd /SOMEWHERE;
cvs -d $CVSROOT checkout sv;

CVS update is done by:
cd /SOMEWHERE/sv;
cvs -d $CVSROOT update -dP;

CVS commit is done by:
cd /SOMEWHERE/sv;
cvs -d $CVSROOT commit;

I describe all this because I dunno if you might need this information to answer me 
the following question:

I thought that the CVS-Tree LOCAL and on the SERVER are IDENTICAL (after I did an 
update).

But on the server the files end with ,v and have all the comments and version stuff 
inside.

I now know that these files are the rcs files (the backbone of the cvs?).

But I need an exact copy of the version a CLIENT has in its /SOMEWHERE/sv dir on the 
SERVER (so without the rcs stuff).

How can I achieve this? Do I have to to do an cvs-checkout on the server and 
cvs-update everytime a client did commit something?

Or can I say to the server somehow to keep automatically the rcs stuff seperate in one 
dir and an client-like-copy of the cvs-repository in another dir?


Thanks a lot for any help in advance!


Greetings,

K. Posern.




___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about RCS files

2004-08-26 Thread Brian Gough
K. Posern [EMAIL PROTECTED] writes:

 But I need an exact copy of the version a CLIENT has in its
 /SOMEWHERE/sv dir on the SERVER (so without the rcs stuff).
 
 How can I achieve this? Do I have to to do an cvs-checkout on the
 server and cvs-update everytime a client did commit something?
 
 Or can I say to the server somehow to keep automatically the rcs
 stuff seperate in one dir and an client-like-copy of the
 cvs-repository in another dir?

CVS doesn't have support for that. You'd have arrange to update any
separate checked-out versions on the server yourself using a script.
Take a look at the hooks like 'commitinfo' and loginfo' for ways to do
that.

-- 
Brian Gough

Network Theory Ltd,
Publishing the CVS Reference Manual --- http://www.network-theory.co.uk/cvs/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about RCS files

2004-08-26 Thread Arno Schuring

 Hi.

 I am a CVS newbie and I would like to do/have the following:

 On the clients I work with:
 CVSROOT=:ext:[EMAIL PROTECTED]:/var/lib/cvs;
 LOCAL=/SOMEWHERE/sv;


 CVS update is done by:
 cd /SOMEWHERE/sv;
 cvs -d $CVSROOT update -dP;

 CVS commit is done by:
 cd /SOMEWHERE/sv;
 cvs -d $CVSROOT commit;

cvs -d $CVSROOT makes little sense... cvs uses $CVSROOT by default


 I describe all this because I dunno if you might need this information to
answer me the following question:

 I thought that the CVS-Tree LOCAL and on the SERVER are IDENTICAL (after I
did an update).

 But on the server the files end with ,v and have all the comments and
version stuff inside.

 I now know that these files are the rcs files (the backbone of the cvs?).
more or less. Never touch the files in $CVSROOT


 But I need an exact copy of the version a CLIENT has in its /SOMEWHERE/sv
dir on the SERVER (so without the rcs stuff).

 How can I achieve this? Do I have to to do an cvs-checkout on the server
and cvs-update everytime a client did commit something?

 Or can I say to the server somehow to keep automatically the rcs stuff
seperate in one dir and an client-like-copy of the cvs-repository in
another dir?

See keeping a checked-out copy
https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC175


Arno


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about RCS files

2004-08-26 Thread Spiro Trikaliotis
Hello,

* On Thu, Aug 26, 2004 at 12:20:14PM +0200 K. Posern wrote:
 
 But I need an exact copy of the version a CLIENT has in its
 /SOMEWHERE/sv dir on the SERVER (so without the rcs stuff).

Have a look at C.3.5.2 of your manual:

https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC175

HTH,
   Spiro.

-- 
Spiro R. Trikaliotis
http://www.trikaliotis.net/
http://www.viceteam.org/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Question about process scheduleing

2004-08-26 Thread Lynch, Harold
Title: Question about process scheduleing







I'm trying to look into a problem with the amount of time it takes us to do a checkout of a large (800 meg) module.


On most of the machine in the shop it takes between 10 and 15 minutes, on one machine it can take an hour.


When I look at top on the cvs server, the process associated with the pulls to that machine get very little cpu.

Is there any kind of scheduling going on inside the cvs server process (aside from blocking for io)?


Harold Lynch



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about RCS files

2004-08-26 Thread Andrew Thomas
K. Posern wrote:
But I need an exact copy of the version a CLIENT has in its
 /SOMEWHERE/sv dir on the SERVER (so without the rcs stuff).
How can I achieve this? Do I have to to do an cvs-checkout 
 on the server and cvs-update everytime a client did commit
 something?
Or can I say to the server somehow to keep automatically 
 the rcs stuff seperate in one dir and an client-like-copy
 of the cvs-repository in another dir?
You have to do a cvs-checkout into a separate directory on the server, 
and then perform a cvs-update every time a client does a commit.  In 
UN*X you can do the checkout on a cron job periodically.  In Windows I 
think you can use cygwin to set up a cron job as well.  You could also 
abuse the loginfo script so that after every commit the server runs a 
cvs update in you checked-out directory.  See 
https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC167

Cheers,
Andrew Thomas

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about process scheduleing

2004-08-26 Thread Andrew Thomas
Lynch, Harold wrote:
I'm trying to look into a problem with the amount of time it takes us to 
do a checkout of a large (800 meg) module.

On most of the machine in the shop it takes between 10 and 15 minutes, 
on one machine it can take an hour.

When I look at top on the cvs server, the process associated with the 
pulls to that machine get very little cpu.
Is there any kind of scheduling going on inside the cvs server process 
(aside from blocking for io)?
I had a problem like this that ultimately turned out to be a network 
card misbehaving, particularly with ssh.

Andrew Thomas

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about process scheduleing

2004-08-26 Thread Todd Denniston
 Lynch, Harold wrote:
 
 I'm trying to look into a problem with the amount of time it takes us to do
 a checkout of a large (800 meg) module.
 
 On most of the machine in the shop it takes between 10 and 15 minutes, on
 one machine it can take an hour.
 
 When I look at top on the cvs server, the process associated with the pulls
 to that machine get very little cpu.
 Is there any kind of scheduling going on inside the cvs server process
 (aside from blocking for io)?
 
 Harold Lynch
Have you looked at top on the slow machine? You did not indicate if it has a
bitty processor, compared to others, or if it has a lot of work happening on
it all the time, or even if it has an old slow hard drive that the 800 meg is
getting written to. Oh you are using :ext: or :pserver: access method right?

Have you made sure the network connection to the slow machine is as fast as
the others and in good repair?
(Assuming Unix)
check the output of ifconfig
if the following are not 0 you might have a bad cable/hub/card
errors:0 dropped:0 overruns:0 carrier:0
(not necessarily a good indicator, mine has a few here)

check with ping
`ping -c100 -s1492 slowmachine` 
if there is any loss in a LAN, something is going on you need to look into.
`time ping -f -c1000 -s1492 slowmachine`
for a slow processor machine on a 10Mb/s LAN the loss here should still be
sub 20%.
and running `time ping -f -c1000 -s1492` against a fast machine too might
give you some insight.

also the following might you measure the path.
http://freshmeat.net/projects/netio/

-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane) 
Harnessing the Power of Technology for the Warfighter


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Question about process scheduleing

2004-08-26 Thread Larry Jones
Lynch, Harold writes:
 
 On most of the machine in the shop it takes between 10 and 15 minutes,
 on one machine it can take an hour.

Look for network problems with that machine -- that sounds like dropped
packets and retransmissions.

-Larry Jones

Yep, we'd probably be dead by now if it wasn't for Twinkies. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: WinCvs status window question

2004-08-13 Thread Murrgon
Menu-View-Output
John E wrote:
Just a clarification, I refereing to the output window when I said
status window.
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


WinCvs status window question

2004-08-12 Thread John E
On my all but one of my Windows machines I can see the docked status window.

On one, I cannot.  How do you make this window visible?

Thanks
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


WinCvs status window question

2004-08-12 Thread John E
Just a clarification, I refereing to the output window when I said
status window.
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


commitinfo file question

2004-08-05 Thread Tennis Smith
Hi

I have a question concerning commitinfo and project standards. Is it
possible to run an app (called by commitinfo) against a particular file in
a specific sandbox at commit time? I'm trying to prototype a stylechecker
and don't want anyone but myself affected initially.

If this is possible, does anyone have an example?

TIA,
-Tennis

--
Remove -remove-to-reply to respond to my  email address directly.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: commitinfo file question

2004-08-05 Thread Frederic Brehm
At 12:41 PM 8/5/2004, Tennis Smith wrote:
I have a question concerning commitinfo and project standards. Is it
possible to run an app (called by commitinfo) against a particular file in
a specific sandbox at commit time? I'm trying to prototype a stylechecker
and don't want anyone but myself affected initially.
Commitinfo scripts can see only the files that are being committed, unless 
you are running with a local repository. Then the script can see all of 
your files.

It's probably easiest to create a new temporary and test your commitinfo 
script in there.

You could also check $USER in the commitinfo script.
Fred
___
Frederic W. Brehm, Sarnoff Corporation, http://www.sarnoff.com/

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: commitinfo file question

2004-08-05 Thread Frederic Brehm
At 12:53 PM 8/5/2004, Frederic Brehm wrote:
It's probably easiest to create a new temporary and test your commitinfo 
script in there.
That should be a new temporary REPOSITORY
Sorry,
Fred
___
Frederic W. Brehm, Sarnoff Corporation, http://www.sarnoff.com/

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: commitinfo file question

2004-08-05 Thread Tennis Smith
Frederic Brehm [EMAIL PROTECTED] wrote in message
news:[EMAIL PROTECTED]
 At 12:41 PM 8/5/2004, Tennis Smith wrote:
 I have a question concerning commitinfo and project standards. Is it
 possible to run an app (called by commitinfo) against a particular file
in
 a specific sandbox at commit time? I'm trying to prototype a stylechecker
 and don't want anyone but myself affected initially.

 Commitinfo scripts can see only the files that are being committed, unless
 you are running with a local repository. Then the script can see all of
 your files.
Ok.

 It's probably easiest to create a new temporary and test your commitinfo
 script in there.

 You could also check $USER in the commitinfo script.

Good idea.  Do you have an example of it?

Thanks Frederic,
-Tennis


 Fred


 ___
 Frederic W. Brehm, Sarnoff Corporation, http://www.sarnoff.com/





___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Update Question

2004-08-05 Thread Tennis Smith
Hi,

I have a single file that's pivital to a project.  Any time that file is
updated, we need to do a re-compile of the components dependent on it. Is
there any way to automatically drive the recompilation when the user does
a cvs update on that central file?

Any examples are welcome too. ;-)
TIA,
-Tennis

--
Remove -remove-to-reply to respond to my  email address directly.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Update Question

2004-08-05 Thread [EMAIL PROTECTED]
The most obvious suggestion to me is add a dependency rule to your makefile
for this file that executes a cvs update important_file.c command.  That
way any time you do a make on the project, the critical file will be updated
and recompiled if it has changed.  For this to be useful, you must be able
to interact with CVS without entering a password.  How this is achieved
depends on how you originally authenticated with CVS.

Something like this should be added to your makefile:

important_file.o: important_file.c
cvs update important_file.c
$(CC) $(CFLAGS) -c important_file.c

YMMV depending on your project rules. Don't forget tabs are required to indent
as shown above.

Adam
---
Adam Bernstein   [EMAIL PROTECTED]   http://mpgedit.org/~number6
Key fingerprint =  E1 91 49 4C 24 18 E2 04  7A D3 78 A8 86 A9 7C 38

On Thu, 5 Aug 2004, Tennis Smith wrote:

 Hi,
 
 I have a single file that's pivital to a project.  Any time that file is
 updated, we need to do a re-compile of the components dependent on it. Is
 there any way to automatically drive the recompilation when the user does
 a cvs update on that central file?
 
 Any examples are welcome too. ;-)
 TIA,
 -Tennis
 
 --
 Remove -remove-to-reply to respond to my  email address directly.
 
 
 ___
 Info-cvs mailing list
 [EMAIL PROTECTED]
 http://lists.gnu.org/mailman/listinfo/info-cvs
 



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Import question

2004-07-22 Thread Lemke, Michael IZ/HZA-IOP
When I do a cvs import of a new vendor version the new files become the
head revision.  I'd like to do the import such that it doesn't affect HEAD.
Only after I've tested the new stuff I want it to become HEAD.  Of course,
it should work with local changes merged in just like the standard way of
doing it on the trunk.  How can I do this?  

Thanks,
Michael


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Import question

2004-07-22 Thread Rohan Nandode
I had same problem some time back but don't have any solution to it..
you can go through
http://lists.gnu.org/archive/html/info-cvs/2004-02/msg00077.html
-Rohan
Lemke, Michael IZ/HZA-IOP wrote:
When I do a cvs import of a new vendor version the new files become the
head revision.  I'd like to do the import such that it doesn't affect HEAD.
Only after I've tested the new stuff I want it to become HEAD.  Of course,
it should work with local changes merged in just like the standard way of
doing it on the trunk.  How can I do this?  

Thanks,
Michael
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Import question

2004-07-22 Thread Larry Jones
Lemke, Michael  IZ/HZA-IOP writes:
 
 When I do a cvs import of a new vendor version the new files become the
 head revision.  I'd like to do the import such that it doesn't affect HEAD.
 Only after I've tested the new stuff I want it to become HEAD.  Of course,
 it should work with local changes merged in just like the standard way of
 doing it on the trunk.  How can I do this?  

Unfortunately, CVS doesn't have any convenient way to let you do that.

-Larry Jones

I told her to expect you to deny everything. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Import question

2004-07-22 Thread Christopher.Fouts
Test BEFORE importing!


-Original Message-
From: [EMAIL PROTECTED] 
[mailto:[EMAIL PROTECTED]
] On Behalf Of Larry Jones
Sent: Thursday, July 22, 2004 10:12 AM
To: Lemke,Michael IZ/HZA-IOP
Cc: '[EMAIL PROTECTED]'
Subject: Re: Import question


Lemke, Michael  IZ/HZA-IOP writes:
 
 When I do a cvs import of a new vendor version the new files become 
 the head revision.  I'd like to do the import such that it doesn't 
 affect HEAD. Only after I've tested the new stuff I want it 
to become 
 HEAD.  Of course, it should work with local changes merged in just 
 like the standard way of doing it on the trunk.  How can I do this?

Unfortunately, CVS doesn't have any convenient way to let you do that.

-Larry Jones

I told her to expect you to deny everything. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Import question

2004-07-22 Thread Lemke, Michael IZ/HZA-IOP
 From: Christopher.Fouts
 Sent: Thursday, July 22, 2004 4:22 PM
 To: [EMAIL PROTECTED]
 Subject: RE: Import question
 
 
 Test BEFORE importing!

Sure but I need the merge of the local changes.  But I can't get them
without the import or can I?


 
 
 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED]
 ] On Behalf Of Larry Jones
 Sent: Thursday, July 22, 2004 10:12 AM
 To: Lemke,Michael IZ/HZA-IOP
 Cc: '[EMAIL PROTECTED]'
 Subject: Re: Import question
 
 
 Lemke, Michael  IZ/HZA-IOP writes:
  
  When I do a cvs import of a new vendor version the new 
 files become 
  the head revision.  I'd like to do the import such that it doesn't 
  affect HEAD. Only after I've tested the new stuff I want it 
 to become 
  HEAD.  Of course, it should work with local changes merged in just 
  like the standard way of doing it on the trunk.  How can I do this?
 
 Unfortunately, CVS doesn't have any convenient way to let 
 you do that.
 
 -Larry Jones
 
 I told her to expect you to deny everything. -- Calvin
 
 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Import question

2004-07-22 Thread Christopher.Fouts
Can you export (not check out) the latest files you need 
from a current vendor branch, which should contain the changes 
you want (correct), add (not cvs add) your new files, test, 
and then import all the files to a new vendor branch?

-chris

-Original Message-
From: [EMAIL PROTECTED] 
[mailto:[EMAIL PROTECTED]
] On Behalf Of Lemke, Michael IZ/HZA-IOP
Sent: Thursday, July 22, 2004 10:36 AM
To: [EMAIL PROTECTED]
Subject: RE: Import question


 From: Christopher.Fouts
 Sent: Thursday, July 22, 2004 4:22 PM
 To: [EMAIL PROTECTED]
 Subject: RE: Import question
 
 
 Test BEFORE importing!

Sure but I need the merge of the local changes.  But I can't 
get them without the import or can I?


 
 
 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED]
 ] On Behalf Of Larry Jones
 Sent: Thursday, July 22, 2004 10:12 AM
 To: Lemke,Michael IZ/HZA-IOP
 Cc: '[EMAIL PROTECTED]'
 Subject: Re: Import question
 
 
 Lemke, Michael  IZ/HZA-IOP writes:
  
  When I do a cvs import of a new vendor version the new
 files become
  the head revision.  I'd like to do the import such that it doesn't
  affect HEAD. Only after I've tested the new stuff I want it 
 to become
  HEAD.  Of course, it should work with local changes merged in just
  like the standard way of doing it on the trunk.  How can 
I do this?
 
 Unfortunately, CVS doesn't have any convenient way to let
 you do that.
 
 -Larry Jones
 
 I told her to expect you to deny everything. -- Calvin
 
 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Import question

2004-07-22 Thread Lemke, Michael IZ/HZA-IOP
 -Original Message-
 From: Christopher.Fouts
 Sent: Thursday, July 22, 2004 4:43 PM
 Subject: RE: Import question
 
 Can you export (not check out) the latest files you need 
 from a current vendor branch, which should contain the changes 
 you want (correct), add (not cvs add) your new files, test, 
 and then import all the files to a new vendor branch?

Not sure I understand this.  How could that put the changes
I made to file X into the new vendor version of X?

What would importing the stuff with something like 
cvs import -b 1.1.3 ... do?

Currently, I am thinking of making a branch at the current
HEAD, then import as usual.  That way I have at least a chance
to easily get a sandbox of the old version.  BTW, I know which
sandboxes exist so I am not very much concerned with concurrency.

Michael

 
 -chris
 
 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED]
 ] On Behalf Of Lemke, Michael IZ/HZA-IOP
 Sent: Thursday, July 22, 2004 10:36 AM
 To: [EMAIL PROTECTED]
 Subject: RE: Import question
 
 
  From: Christopher.Fouts
  Sent: Thursday, July 22, 2004 4:22 PM
  To: [EMAIL PROTECTED]
  Subject: RE: Import question
  
  
  Test BEFORE importing!
 
 Sure but I need the merge of the local changes.  But I can't 
 get them without the import or can I?
 
 
  
  
  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED]
  ] On Behalf Of Larry Jones
  Sent: Thursday, July 22, 2004 10:12 AM
  To: Lemke,Michael IZ/HZA-IOP
  Cc: '[EMAIL PROTECTED]'
  Subject: Re: Import question
  
  
  Lemke, Michael  IZ/HZA-IOP writes:
   
   When I do a cvs import of a new vendor version the new
  files become
   the head revision.  I'd like to do the import such that 
 it doesn't
   affect HEAD. Only after I've tested the new stuff I want it 
  to become
   HEAD.  Of course, it should work with local changes 
 merged in just
   like the standard way of doing it on the trunk.  How can 
 I do this?
  
  Unfortunately, CVS doesn't have any convenient way to let
  you do that.
  
  -Larry Jones
  
  I told her to expect you to deny everything. -- Calvin
  
  
 
 
 ___
 Info-cvs mailing list
 [EMAIL PROTECTED]
 http://lists.gnu.org/mailman/listinfo/info-cvs
 
 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Import question

2004-07-22 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Lemke, Michael  IZ/HZA-IOP [EMAIL PROTECTED] writes:

 When I do a cvs import of a new vendor version the new files become the
 head revision.  I'd like to do the import such that it doesn't affect HEAD.
 Only after I've tested the new stuff I want it to become HEAD.  Of course,
 it should work with local changes merged in just like the standard way of
 doing it on the trunk.  How can I do this?  

A feature to deal with this was just added to the CVS feature branch
based on patches from Chris G. Demetriou. It is the 'cvs import -X'
switch which may be enabled by default using the option
ImportNewFilesToVendorBranchOnly=yes in the CVSROOT/config file.
If you checkout the top-of-tree cvs.cvshome.org ccvs module, you can
have a version of CVS with this feature.

However, Chris also provided a proof of concept set of shell scripts to
help you in the short term.

See http://lists.gnu.org/archive/html/bug-cvs/2004-06/msg00173.html
and http://lists.gnu.org/archive/html/bug-cvs/2004-06/txt5G0hQtIjfA.txt

If you hae already done other imports in your tree, you will need/want
to force a commit of the HEAD to be exactly the same as the previously
imported versions for now so that the stuff that works will all still be
visible. This will change the default branch from the vendor 1.1.1 to
the HEAD again. If you only have 1.1.1.1 versions from a single previous
import, you could just use 'cvs admin -b1' on those files instead of
forcing a checkin in preparation for a new cvs import.

Enjoy!
-- Mark

   --- start of cvsimport_killnew ---
#!/bin/sh
# $Id: cvsimport_killnew,v 1.5 2003/01/16 01:27:55 cgd Exp $

# Script to kill revision 1.1 in files newly imported by CVS.
# See http://www.demetriou.com/~cgd/cvs for details.
#
# Written by Chris G. Demetriou [EMAIL PROTECTED].  Public domain.

fatal() {
echo '***' $0: ERROR: $1 12
exit 1
}

usage() {
echo usage: $0 logfilename 12
fatal usage
exit 1
}

if [ -z ${CVSROOT} ]; then
fatal CVSROOT is unset
fi

logfile=$1
if [ -z $logfile ]; then
usage
fi
if [ ! -f $logfile ]; then
fatal $logfile does not exist
fi

awk '/^N / { print $2 }' $logfile | (
set -e
while read file; do
repos_path=${CVSROOT}/${file},v 
repos_dir=`dirname ${repos_path}` 
repos_file=`basename ${repos_path}` 

if [ ! -f $repos_path ]; then
echo Warning: $repos_path does not exist.
continue
fi

echo Fixing $file...
(
# XXX error handling in this block is bogus...
# a dir that won't (likely) be used.
mkdir -p $repos_dir/CVS
cd $repos_dir/CVS

# reset default branch.
rcs -b ../${repos_file} 

# check in new rev w/ same contents.
co -l -M ../${repos_file}
ci -r1.2 -d -sdead \
-mrevision 1.1 was added on the vendor branch; delete 
from trunk \
../${repos_file}
)
rmdir $repos_dir/CVS || true

echo Moving $file to the attic...
mkdir -p ${repos_dir}/Attic 
mv ${repos_path} ${repos_dir}/Attic/${repos_file} 
done
)

exit
--- end of cvsimport_killnew ---
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFA/9ot3x41pRYZE/gRAp8LAJ0ed5Ka5JFtHi2mxIGrjKFfsxni3ACghi01
OE240lCAnC7HNy0Lpct90s0=
=SrRT
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Import question

2004-07-22 Thread Lemke, Michael IZ/HZA-IOP
 From: Mark D. Baushke
 Sent: Thursday, July 22, 2004 5:16 PM
 To: Lemke, Michael IZ/HZA-IOP
 Cc: '[EMAIL PROTECTED]'
 Subject: Re: Import question 
 
 
 -BEGIN PGP SIGNED MESSAGE-
 Hash: SHA1
 
 Lemke, Michael  IZ/HZA-IOP writes:
 
  When I do a cvs import of a new vendor version the new 
 files become the
  head revision.  I'd like to do the import such that it 
 doesn't affect HEAD.
  Only after I've tested the new stuff I want it to become 
 HEAD.  Of course,
  it should work with local changes merged in just like the 
 standard way of
  doing it on the trunk.  How can I do this?  
 
 A feature to deal with this was just added to the CVS feature branch
 based on patches from Chris G. Demetriou. It is the 'cvs import -X'
 switch which may be enabled by default using the option
 ImportNewFilesToVendorBranchOnly=yes in the CVSROOT/config file.
 If you checkout the top-of-tree cvs.cvshome.org ccvs module, you can
 have a version of CVS with this feature.

Hey, cool.  Why wasn't that there in the first place? ;-)  But I'll
probably not grab it now but wait until it appears in the next 1.12.X
release.

However, this whole thing makes me realize I don't really understand
vendor branches.  What's different from ordinary ones?  Just that the
trunk helps itself to grab a version from it if it doesn't have one yet?
The Cederqvist seems a bit short on it but maybe I should study it again.
And what's that default branch stuff?

 
 However, Chris also provided a proof of concept set of shell 
 scripts to
 help you in the short term.
 

Thanks, but that's a bit too hot for me messing with the repository
files directly.


Anyway, thanks y'all for the quick help.  Glad I asked.

Michael


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Import question

2004-07-22 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Lemke, Michael  IZ/HZA-IOP [EMAIL PROTECTED] writes:

 However, this whole thing makes me realize I
 don't really understand vendor branches. What's
 different from ordinary ones? 

The vendor branch more closely models the RCS
branching model. The initial import creates
version 1.1 of a file and then 1.1.1.1 immediately
afterward while at the same time changing the RCS
branch to '1.1.1' and laying down a vendor tag label
on the '1.1.1' RCS branch and the vendor version tag
gets put onto 1.1.1.1.

So, an imported version is always a real RCS branch.

A cvs 'magic' branch has a tag name associated
with a 'number' that looks like the base version
of the file followed by the magical '.0' followed
by an even number selected after looking at the
other CVS 'magic' branch tags in the file.

This 'magic' branch does not actually consume any
delta record space in the RCS file until after you
make a commit to the branch. This is also known as
doing a 'lazy' allocation.

 Just that the trunk helps itself to grab a
 version from it if it doesn't have one yet? The
 Cederqvist seems a bit short on it but maybe I
 should study it again. And what's that default
 branch stuff?

Mostly it is where the RCS view of the file
collides with the CVS view of the world...

If you really want to read more details, you
probably need to dive into the doc/RCSFILES in one
of the CVS releases and then read up in Cederqvist
on RCS History and RCS, importing files from ...

You may also find it helpful to read
http://cvsbook.red-bean.com/cvsbook.html
(although I can't recall how deeply Karl covered
import and vendor related stuff in his book).

  However, Chris also provided a proof of
  concept set of shell scripts to help you in
  the short term.
  
 
 Thanks, but that's a bit too hot for me messing
 with the repository files directly.

Yeah, I can understand that point of view too. :-)

 Anyway, thanks y'all for the quick help. Glad I
 asked.
 
 Michael

Good luck,
-- Mark
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFA/+1W3x41pRYZE/gRAs8VAJ4wfNnR9za8QYWeJ5e946rRjibrkgCfeyf0
/LTsitM45+hqn1nYSdUNoAM=
=UCYg
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Import question

2004-07-22 Thread Pierre Asselin
Lemke, Michael  IZ/HZA-IOP [EMAIL PROTECTED] wrote:
 When I do a cvs import of a new vendor version the new files become the
 head revision.  I'd like to do the import such that it doesn't affect HEAD.
 Only after I've tested the new stuff I want it to become HEAD.  Of course,
 it should work with local changes merged in just like the standard way of
 doing it on the trunk.  How can I do this?  

There is no way to avoid that.  Your trunk is broken between the time
you do the import and when you merge the import back to the trunk.

To mitigate the problem, you should tag your trunk before you do the
import.  If the post-import merge gives you trouble, you can at least
start a branch off your pre-import tag so you can continue your work
in another sandbox while you sort things out.  When you finally merge
the import, you go on to merge the temporary branch.

-- 
pa at panix dot com
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Commit and Add Question.

2004-07-13 Thread Hon Seng Phuah
Hi all,

I want to some operations after commit process is done. If I invoke
cvs add, I do not do anything. Currently, I add the operation in
loginfo file but my operations will get trigger if I run cvs commit or
add.

If I just want to trigger my operation once the cvs commit is done,
how to do it? Thanks.

-HS
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Commit and Add Question.

2004-07-13 Thread Mark D. Baushke
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

Hon Seng Phuah [EMAIL PROTECTED] writes:

 I want to some operations after commit process is done. If I invoke
 cvs add, I do not do anything. Currently, I add the operation in
 loginfo file but my operations will get trigger if I run cvs commit or
 add.
 
 If I just want to trigger my operation once the cvs commit is done,
 how to do it? Thanks.

https://www.cvshome.org/docs/manual/cvs-1.11.17/cvs_18.html#SEC173

-- Mark
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.3 (FreeBSD)

iD8DBQFA84y53x41pRYZE/gRArAkAJ4xCJMwXGoaJvfPQO2hhhpAhYXVVQCePZ9Q
AHBMphMw/bXpx2sEkaL0Gnc=
=CjAK
-END PGP SIGNATURE-


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Diff question

2004-06-29 Thread Emmanuel STAPF [ES]
How can I perform a diff between 2 dates in a given branch? I was hoping
something like Branch:Date would work the same way it does for the `cvs
up -j' option, but it is not recognized?

Anything I'm missing?
Manu

PS: I'm using the client cvs 1.10.5


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Check out question.

2004-06-29 Thread Hon Seng Phuah
My question is:

I have four subdirectories in a CVS repository, such as:

+-a 
  |--b
|--c
   |--d

If the a/b/c module contains a few files. If I want to add new module
using an empty hard drive, I will have to invoke cvs co a/b/c first.
Only then I invoke cvs add directory command.

Unfortunately, by invoke checkout command, it will checkout all a/b/c
module files into my new hard drive. Is there a way to prevent
checking out all module files into my new hard drive?

Thanks.

-HS Phuah
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Check out question.

2004-06-29 Thread Larry Jones
Hon Seng Phuah writes:
 
 Unfortunately, by invoke checkout command, it will checkout all a/b/c
 module files into my new hard drive. Is there a way to prevent
 checking out all module files into my new hard drive?

Use the -l option of checkout to prevent recursion.

-Larry Jones

I keep forgetting that rules are only for little nice people. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: Cvs admin command question - using on files existing on branc h also

2004-06-23 Thread Jim.Hyslop
[EMAIL PROTECTED] wrote:
 Jeeva Sarma writes:
  
  I have a question using cvs admin command to delete a revision of a 
  file. If I deleted revision 1.7 of a file, which also exists on a 
  branch at that revision, what will be the status of that 
 file on the 
  branch?
 
 A revision cannot be on multiple branches.  Revision 1.7 is 
 on the trunk and only on the trunk.  If you have a branch 
 that's rooted at a particular revision, then I suspect that 
 removing that revision would be a bad idea.
Jeeva, this is where your experimental portion of your repository comes into
play. I always recommend that you set up a directory in the repository, say
$CVSROOT/cvs-test, with the understanding that anything in that directory
can and will be deleted without notice. This allows you to experiment and
see exactly what would happen in this case. I suspect Larry's probably
right, though - it's probably not something you want to do ;-)

-- 
Jim Hyslop
Senior Software Designer
Leitch Technology International Inc. (http://www.leitch.com)
Columnist, C/C++ Users Journal (http://www.cuj.com/experts)


 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: branch removal question

2004-06-23 Thread Don Butts
Title: branch removal question



I 
asked this question last Friday but got no response.
Was it 
poorly asked, not enough information, too
ignorant for words? If I need to supply more 
information
please 
let me know, I would be glad to.

 Thanks,

 Don 
Butts

  -Original Message-From: Don Butts 
  [mailto:[EMAIL PROTECTED]Sent: Friday, June 18, 2004 9:45 
  AMTo: [EMAIL PROTECTED]Subject: branch removal 
  question
  We are using cvs in somewhat of a non-standard way. 
  We have a production cut of our compiled source that 
  we deploy via cvs using a production branch. The 
  application does not mind the fact the CVS control 
  files co-exist within the source and the application 
  runs fine. When we want to patch production we first 
  patch the same branch in a different checkout area and 
  then commit it. When it comes time to upgrade 
  the production area we bring down the application 
  during a maintenance window and perform a cvs update 
  in the production area. This has worked great 
  for more than a year so I am very happy with this 
  process. We were basically mimicking this 
  process in a pre-production area for QA purposes and 
  while this has worked OK we are having a bit of 
  trouble keeping these two branches in sync. 
  So, I know that I can remove a branch via the cvs admin -n command and I am wondering if a better process would be to remove the preprod branch every time 
  I move a new patch to production and when it comes 
  time to test the next patch just recreate the preprod 
  branch off of the current prod branch. I have 
  performed some tests using this method and all seems 
  to work fine but I thought that I would ask the 
  opinion of those who have been using CVS a lot longer 
  than I. 
   Thank you for your 
  time, 
   
   Don Butts 

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: branch removal question

2004-06-23 Thread Jim.Hyslop
Don Butts wrote:
 I asked this question last Friday but got no response.
 Was it poorly asked, not enough information, too ignorant for 
 words?
How about, this requires a few more brain cycles than were available at the
time? :=)

   -Original Message-
   We are using cvs in somewhat of a non-standard way. 
   We have a production cut of our compiled source that 
   we deploy via cvs using a production branch.  The 
   application does not mind the fact the CVS control 
   files co-exist within the source and the application 
   runs fine. When we want to patch production we first 
   patch the same branch in a different checkout area and 
   then commit it.  When it comes time to upgrade the 
   production area we bring down the application during a 
   maintenance window and perform a cvs update in the 
   production area.  This has worked great for more than a 
   year so I am very happy with this process.  We were 
   basically mimicking this process in a pre-production area 
   for QA purposes and while this has worked OK we are 
   having a bit of trouble keeping these two branches in 
   sync.  So,  I know that I can remove a branch via the 
   cvs admin -n command and I am wondering if a better 
   process would be to remove the preprod branch every time 
   I move a new patch to production and when it comes time 
   to test the next patch just recreate the preprod branch 
   off of the current prod branch.  I have performed some 
   tests using this method and all seems to work fine but 
   I thought that I would ask the opinion of those who have 
   been using CVS a lot longer than I. 
I wouldn't remove the branches. I'm always reluctant to remove anything from
the history.

Instead of checking out branches, it might be easier to apply non-branch
tags instead. This means fewer branches to deal with. I'm guessing the
reason you're using a branch is because the update command remains the same,
e.g. cvs update -r PROD (where PROD is a branch tag).

Basically, what you would do is to create a non-branch tag indicating the
currently-tested and working version, e.g. cvs tag REL_2_0_2. Then, you can
move the PRODUCTION tag using the -F option to tag.

Let me know if I'm not being clear (I haven't had my morning coffee yet ;-)

-- 
Jim Hyslop
Senior Software Designer
Leitch Technology International Inc. (http://www.leitch.com)
Columnist, C/C++ Users Journal (http://www.cuj.com/experts)


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: branch removal question

2004-06-23 Thread Todd Denniston

 Don Butts wrote:
 
 Content-Type: multipart/mixed; boundary1243246784==
Please do not send MIME and/or HTML encrypted messages to the list.
Plain text only, PLEASE!


 We are using cvs in somewhat of a non-standard way.
 We have a production cut of our compiled source that
 we deploy via cvs using a production branch.  The
 application does not mind the fact the CVS control
 files co-exist within the source and the application
 runs fine. When we want to patch production we first
 patch the same branch in a different checkout area and
 then commit it.  
Confused, one or 2 CVSROOTs? do you mean `patch  patchfile` or `cvs update
-jsomething -jsomethingelse` (generally called a merge)

 When it comes time to upgrade the
 production area we bring down the application during a
 maintenance window and perform a cvs update in the
 production area.  This has worked great for more than a
 year so I am very happy with this process.  We were
 basically mimicking this process in a pre-production area
 for QA purposes and while this has worked OK we are
 having a bit of trouble keeping these two branches in
 sync.  So,  I know that I can remove a branch via the
 cvs admin -n command and I am wondering if a better
 process would be to remove the preprod branch every time
Why remove it? You loose history when you remove things (actually delete
information from repo files), which is pretty much against having a version
control system in the first place.

why not create preprod`date +%Y_%b_%d` branches when you want to go into QA,
so you have all the information that lead up to each release.

(next question is a more personal process, not general practice) and why are
the production releases not just (normal) tags on the QA branch(es), where the
QA people have said this set of files is correct for release.? Of course you
_might_ want to branch at that normal tag too if you need to do several fixes
to the released version and then merge back to that QA branch when the fixes
are ready to be QAed.

 I move a new patch to production and when it comes time
 to test the next patch just recreate the preprod branch
 off of the current prod branch. I have performed some
 tests using this method and all seems to work fine but
 I thought that I would ask the opinion of those who have
 been using CVS a lot longer than I.
 
 Thank you for your time,
 
 Don Butts

-- 
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane) 
Harnessing the Power of Technology for the Warfighter


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: branch removal question

2004-06-23 Thread Paul Sander
Normally one would apply a tag to the versions that are ready for testing,
and update the tag as bugs are fixed.  Then apply a second tag to the
code that reaches production quality.  To apply the second tag, use the
cvs rtag -r option.

The bummer with this is that if you make bug fixes in your test environment,
you must run an additional cvs update command on each modified file due
to stickiness issues in with the tags, but it's a minor annoyance that's
overcome with experience.  And you must remember to apply the testing
tag to the committed fixes, a part of the process that might easily be
forgotten.

--- Forwarded mail from [EMAIL PROTECTED]

I asked this question last Friday but got no response.
Was it poorly asked, not enough information, too
ignorant for words?  If I need to supply more information
please let me know, I would be glad to.

-Original Message-
From: Don Butts [mailto:[EMAIL PROTECTED]
Sent: Friday, June 18, 2004 9:45 AM
To: [EMAIL PROTECTED]
Subject: branch removal question

We are using cvs in somewhat of a non-standard way. 
We have a production cut of our compiled source that 
we deploy via cvs using a production branch.  The 
application does not mind the fact the CVS control 
files co-exist within the source and the application 
runs fine. When we want to patch production we first 
patch the same branch in a different checkout area and 
then commit it.  When it comes time to upgrade the 
production area we bring down the application during a 
maintenance window and perform a cvs update in the 
production area.  This has worked great for more than a 
year so I am very happy with this process.  We were 
basically mimicking this process in a pre-production area 
for QA purposes and while this has worked OK we are 
having a bit of trouble keeping these two branches in 
sync.  So,  I know that I can remove a branch via the 
cvs admin -n command and I am wondering if a better 
process would be to remove the preprod branch every time 
I move a new patch to production and when it comes time 
to test the next patch just recreate the preprod branch 
off of the current prod branch.  I have performed some 
tests using this method and all seems to work fine but 
I thought that I would ask the opinion of those who have 
been using CVS a lot longer than I. 

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: branch removal question

2004-06-23 Thread Paul Sander
--- Forwarded mail from [EMAIL PROTECTED]

Don Butts wrote:
 I asked this question last Friday but got no response.
 Was it poorly asked, not enough information, too ignorant for 
 words?

I wouldn't remove the branches. I'm always reluctant to remove anything from
the history.

Instead of checking out branches, it might be easier to apply non-branch
tags instead. This means fewer branches to deal with. I'm guessing the
reason you're using a branch is because the update command remains the same,
e.g. cvs update -r PROD (where PROD is a branch tag).

Basically, what you would do is to create a non-branch tag indicating the
currently-tested and working version, e.g. cvs tag REL_2_0_2. Then, you can
move the PRODUCTION tag using the -F option to tag.

Floating tags can also be used.  For example, create a tag called
PRODUCTION and apply it to the next release.  Then just run cvs update
in the production area, and the proper versions will appear.

The down side to this is that if you don't apply unique tags in addition
to the floating one, you can't go back if something breaks.

--- End of forwarded message from [EMAIL PROTECTED]



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: branch removal question

2004-06-23 Thread Jim.Hyslop
[EMAIL PROTECTED] wrote:
 Floating tags can also be used.  For example, create a tag 
 called PRODUCTION and apply it to the next release.  Then 
 just run cvs update
 in the production area, and the proper versions will appear.
Yep, that's basically the idea I was trying to get across.

 The down side to this is that if you don't apply unique tags 
 in addition to the floating one, you can't go back if 
 something breaks.
Yes, that's a very important point. 

So, to summarize, I think we're in agreement in recommending this procedure:

There are two floating tags. For discussion's sake, I will call them:
QA_VERSION
PRODUCTION

The tag QA_VERSION is applied to a version that is ready to go to QA. The
tag PRODUCTION is applied to a version that is ready to go into production.

When a version is ready for QA, a unique tag is applied. I usually recommend
that the tag incorporates the version number and build number, e.g. for rev.
2.1 build 17 of a project named PROJECT, the tag might look like
PROJECT_2_1_17. The QA_VERSION tag is applied to that version, using:

cvs rtag -rPROJECT_2_1_17 -Ff QA_VERSION project
(or, if you prefer, 'cvs tag -rPROJECT_2_1_17 -Ff QA_VERSION' )

When the QA version is ready for production, then the production tag is
applied, using:
cvs rtag -rQA_VERSION -F PRODUCTION project

During the maintenance window, the QA version is promoted to production by
simply issuing a 'cvs update -dP' command.

Don, feel free to disagree or to point out anything we may have missed ;-)

-- 
Jim Hyslop
Senior Software Designer
Leitch Technology International Inc. (http://www.leitch.com)
Columnist, C/C++ Users Journal (http://www.cuj.com/experts)


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Cvs admin command question - using on files existing on branch also

2004-06-22 Thread Jeeva Sarma
I have a question using cvs admin command to delete a
revision of a file. If I deleted revision 1.7 of a
file, which also exists on a branch at that revision,
what will be the status of that file on the branch?

Some files exist on trunk and also branch, and we want
to rollback some revisions for these files only on the
branch, is there anyway we can use the cvs admin
command for to achieve this? Or should we do it
manually?

Thanks for any insights.

--Jeeva

__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Cvs admin command question - using on files existing on branch also

2004-06-22 Thread Larry Jones
Jeeva Sarma writes:
 
 I have a question using cvs admin command to delete a
 revision of a file. If I deleted revision 1.7 of a
 file, which also exists on a branch at that revision,
 what will be the status of that file on the branch?

A revision cannot be on multiple branches.  Revision 1.7 is on the
trunk and only on the trunk.  If you have a branch that's rooted at a
particular revision, then I suspect that removing that revision would
be a bad idea.

 Some files exist on trunk and also branch, and we want
 to rollback some revisions for these files only on the
 branch, is there anyway we can use the cvs admin
 command for to achieve this? Or should we do it
 manually?

Neither.  You should use update with two -j options to remove the
revisions in question and then commit the result as a new revision:

https://www.cvshome.org/docs/manual/cvs-1.11.16/cvs_5.html#SEC62

-Larry Jones

When you're SERIOUS about having fun, it's not much fun at all! -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


branch removal question

2004-06-18 Thread Don Butts
Title: branch removal question






We are using cvs in somewhat of a non-standard way.
We have a production cut of our compiled source that
we deploy via cvs using a production branch. The
application does not mind the fact the CVS control
files co-exist within the source and the application
runs fine. When we want to patch production we first
patch the same branch in a different checkout area and
then commit it. When it comes time to upgrade the
production area we bring down the application during a
maintenance window and perform a cvs update in the
production area. This has worked great for more than a
year so I am very happy with this process. We were
basically mimicking this process in a pre-production area
for QA purposes and while this has worked OK we are
having a bit of trouble keeping these two branches in
sync. So, I know that I can remove a branch via the
cvs admin -n command and I am wondering if a better
process would be to remove the preprod branch every time
I move a new patch to production and when it comes time
to test the next patch just recreate the preprod branch
off of the current prod branch. I have performed some
tests using this method and all seems to work fine but
I thought that I would ask the opinion of those who have
been using CVS a lot longer than I.


 Thank you for your time,



  Don Butts



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: newbie question on initializing repository

2004-06-17 Thread Bret A Cooper

Chris,
I've had some issues with my email so
I'm just now seeing your response.
Thanks for taking the time to write
up the shell script. Looks like
a nice way to do it. I guess it
boils down to whether its possible to 
determine the type of a file from its
name. Though as I think about it,
I could replace your if statement
with a call to the UNIX file command and then it
wouldn't be name dependent. But
it would be dependent on how
good a job the file command
does and I've seen it get things wrong.
Bret Cooper



---original message--
Date: Mon, 7 Jun 2004 17:17:10 -0400
From: [EMAIL PROTECTED]
Subject: RE: newbie question on initializing repository
To: [EMAIL PROTECTED]

In this case, I'd import a blank project, and then use cvs add
in a
script to add the
files, using the -kb option accordingly. Here's a c-shell pseudo-code
 
# Assume *.h and *.cpp files are text files, and the rest are binary
files...
for f in `find .`; then
  if [ -f $f ]; then
# found a file, test if binary
if [ $f == *.h || $f == *.cpp ]; then
  # add binary file
  cvs add -kb $f;
else
  # add text file
  cvs add $f;
  else
if [ -d $f ]; then
 # add directory
 cvs add $f;
fi;
  fi;
done
  
 You get the idea. Gurus may have a better solution though
 
-chris
 


-Original Message-

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On
Behalf Of Bret A Cooper

Sent: Monday, June 07, 2004 4:47 PM

To: [EMAIL PROTECTED]

Subject: newbie question on initializing repository






Hello, 



This is a first time user question. 



We have collected all of our source files within a directory
structure and are ready to initialize the cvs 

repository. There are a couple thousand files. Roughly 20%
are
binary type files and are scattered 

around throughout various directories. 



My original plan was to run the cvs init command from the
topmost directory and be done. However, 

I now believe its not that simple, as the binary files(only)
must be initialized with the -kb option.  

Is that correct? If so, any suggestions on the simplest/easiest
to go about this? 



Thanks, 

Bret Cooper
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


View List of CVS Tags (basic question)

2004-06-14 Thread Iain Freeston
Hello, I wonder if anyone can help me.
I am after a list of Tags made in CVS.
Looking at the documentation I got the impression I should be viewing the 
Taginfo file, but it doesn't give me the information that I want.

Can anyone help me please because I think I am well off the mark at the 
moment.

intY has scanned this email for all known viruses (www.inty.com)



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: View List of CVS Tags (basic question)

2004-06-14 Thread Brian Gough
Iain Freeston [EMAIL PROTECTED] writes:

 I am after a list of Tags made in CVS.  Looking at the documentation
 I got the impression I should be viewing the Taginfo file, but it
 doesn't give me the information that I want.

A list of tag names is stored in the CVSROOT/val-tags file in the
repository.

-- 
Brian Gough

Network Theory Ltd,
Publishing the CVS Reference Manual --- http://www.network-theory.co.uk/


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: View List of CVS Tags (basic question)

2004-06-14 Thread Jim.Hyslop
Iain Freeston wrote:
 Hello, I wonder if anyone can help me.
 I am after a list of Tags made in CVS.
 Looking at the documentation I got the impression I should be 
 viewing the Taginfo file, but it doesn't give me the 
 information that I want.
 
 Can anyone help me please because I think I am well off the 
 mark at the moment.
You're right, you are well off the mark ;-)

taginfo is a hook that allows you to run a specific script when 'cvs tag' or
'cvs rtag' commands are invoked.

If all you want is exactly what you said - a listing of all tags in the
repository - then you can use Brian's suggestion of looking at val-tags. Be
aware that val-tags shows all the tags ever applied to any file in the
repository; tags are never removed. It also does not differentiate between
different modules (which really limits its usefulness, IMO).

Another way to get the tags for a specific project or a specific set of
files is to use 'cvs log -h' or 'cvs status -v'.

-- 
Jim Hyslop
Senior Software Designer
Leitch Technology International Inc. (http://www.leitch.com)
Columnist, C/C++ Users Journal (http://www.cuj.com/experts)



___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: View List of CVS Tags (basic question)

2004-06-14 Thread Larry Jones
Jim.Hyslop writes:
 
 Be
 aware that val-tags shows all the tags ever applied to any file in the
 repository

No, it doesn't.  It shows all the tags that have been used to *retrieve*
files from the repository since the val-tags file was created.  It's
just an optimization -- you can delete it at any time and CVS will
simply recreate it and continue to function normally.  You should never
rely on it for anything.

-Larry Jones

All this was funny until she did the same thing to me. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: View List of CVS Tags (basic question)

2004-06-14 Thread Larry Jones
Brian Gough writes:
 
 A list of tag names is stored in the CVSROOT/val-tags file in the
 repository.

But it's not complete.  It's just a cache for optimization purposes.

-Larry Jones

Everything's gotta have rules, rules, rules! -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: View List of CVS Tags (basic question)

2004-06-14 Thread Larry Jones
Iain Freeston writes:
 
 I am after a list of Tags made in CVS.

Tags are kept in the individual RCS files, there's no central database
of them.  You can find the tags on a particular file with the log
command or with status -v.

-Larry Jones

I stand FIRM in my belief of what's right!  I REFUSE to
compromise my principles! -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


newbie question: CVS server upgrade

2004-06-10 Thread mark hanna




Hello everyone,

I am reasonably new to CVS and am looking for some tips/handy hints for upgrading the CVS server. can anybody give me any help or advice please ?

my OS is :

SunOS xultra1 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-2System = SunOS
Node = xultra1
Release = 5.8
 
Thanks in advance !

Mark.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: newbie question: CVS server upgrade

2004-06-10 Thread Alex v . Below
Download the latest source, unpack it, cd into the directory:
./configure
make
su
make install
(Some systems allow sudo make install)
HTH
Alex
Am 10.06.2004 um 12:16 schrieb mark hanna:
 Hello everyone,
 I am reasonably new to CVS and am looking for some tips/handy hints 
for upgrading the CVS server. can anybody give me any help or advice 
please ?

 my OS is :
 SunOS xultra1 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-2System = 
SunOS
 Node = xultra1
 Release = 5.8

 Thanks in advance !
 Mark. ___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: newbie question: CVS server upgrade

2004-06-10 Thread Larry Jones
Alex v.Below writes:
 
 Download the latest source, unpack it, cd into the directory:
 
 ./configure
 make
 su
 make install

cvs init

It hasn't been strictly required so far, but it's a good idea.  It gives
the new CVS a chance to update the existing repository should the format
change, add new administrative files, etc.

-Larry Jones

The problem with the future is that it keeps turning into the present.
-- Hobbes


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: newbie question on initializing repository

2004-06-08 Thread Spiro Trikaliotis
Hello,

* On Mon, Jun 07, 2004 at 05:34:02PM -0400 Larry Jones wrote:

  However, I now believe its not that simple, as the binary
  files(only) must be initialized with the -kb option.  Is that
  correct? If so, any suggestions on the simplest/easiest to go about
  this?
 
 If you can distinguish the binary files from the text files by their
 names (e.g., *.gif files are always binary), you can use the CVS
 wrappers facility to automatically handle the files correctly 

To add to this: If the text files are Unix-style (LF only), I also had
success in importing everything as binary, and changing the text files
to text afterwards with cvs admin.

If the text files are Windows style, doing a dos2unix on them, and then
treating it as in the above case, works, too.

Best regards,
   Spiro.

-- 
Spiro R. Trikaliotis I'm subscribed to the mailing lists I'm posting,
http://www.trikaliotis.net/  so please refrain from Cc:ing me. Thank you.


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


newbie question on initializing repository

2004-06-07 Thread Bret A Cooper

Hello,

This is a first time user question.

We have collected all of our source
files within a directory structure and are ready to initialize the cvs
repository. There are a couple
thousand files. Roughly 20% are binary type files and are scattered
around throughout various directories.

My original plan was to run the cvs
init command from the topmost directory and be done. However,
I now believe its not that simple, as
the binary files(only) must be initialized with the -kb option. 
Is that correct? If so, any suggestions
on the simplest/easiest to go about this?

Thanks,
Bret Cooper
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


RE: newbie question on initializing repository

2004-06-07 Thread Christopher.Fouts
Title: Message



In 
this case, I'd import a blank project, and then use "cvs add" in a script to add 
the
files, 
using the -kb option accordingly. Here's a 
c-shellpseudo-code

# 
Assume *.h and *.cpp files are text files, and the rest are binary 
files...
for f 
in `find .`; then
 if [ -f $f ]; 
then
 # found a 
file, test if binary
 if [ $f == 
*.h || $f == *.cpp ]; then
 
# add binary file
 
cvs add -kb $f;
 
else
 
# add text file
cvs 
add $f;
 else
 if [ -d $f ]; 
then
 
# add directory
 
cvs add $f;
fi;
 fi;
done
 
You get the idea. Gurus may have a better 
solution though

-chris


  
  -Original Message-From: 
  [EMAIL PROTECTED] 
  [mailto:[EMAIL PROTECTED] On Behalf 
  Of Bret A CooperSent: Monday, June 07, 2004 4:47 
  PMTo: [EMAIL PROTECTED]Subject: newbie question on 
  initializing repositoryHello, This is a first time 
  user question. We have collected 
  all of our source files within a directory structure and are ready to 
  initialize the cvs repository. 
  There are a couple thousand files. Roughly 20% are binary type 
  files and are scattered around 
  throughout various directories. My 
  original plan was to run the cvs init command from the topmost directory and 
  be done. However, I now believe 
  its not that simple, as the binary files(only) must be initialized with the 
  -kb option.  Is that correct? If 
  so, any suggestions on the simplest/easiest to go about this? 
  Thanks, Bret Cooper
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: newbie question on initializing repository

2004-06-07 Thread Larry Jones
Bret A Cooper writes:
 
 My original plan was to run the cvs init command from the topmost 
 directory and be done.

I think you mean cvs import -- init just creates a repository, it does
not populate it with user files.

 However,
 I now believe its not that simple, as the binary files(only) must be 
 initialized with the -kb option. 
 Is that correct? If so, any suggestions on the simplest/easiest to go 
 about this?

If you can distinguish the binary files from the text files by their
names (e.g., *.gif files are always binary), you can use the CVS
wrappers facility to automatically handle the files correctly -- see the
manual for details (and note that you can specify -W as many times as
you need to on the import command):

https://www.cvshome.org/docs/manual/cvs-1.11.16/cvs_18.html#SEC166

-Larry Jones

Oh yeah?  You just wait! -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


basic question

2004-06-03 Thread Jean LEE



Hello,

I'm new to CVS andI would like to install a 
cvs server on a linux worksation and a cvs client on a WinXP workstation. I 
would like to access the cvsserver with a secure protocol.

What are the tools (cvs, wincvs, cvsnt, ...) and 
protocol (gserver, ssh,...) which are required or best suited for this 
application ?

Thanks for any help.

Jean
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Fwd: basic question

2004-06-03 Thread Alex v . Below
If you only have known users, and all users have both read/write access, I suggest pure ssh.

Please check the cvs documentation how to set this up, if you know how to set up ssh connections, it is really easy.

If you need to control read/write permissions, I suggest a pserver combined with an ssh tunnel.

The archives of this group should give you ample info on this.

As to anonymous read access, I pass the question to the rest of the group. I have no experience with this as it is none of my requirements.

HTH

Alex

Am 03.06.2004 um 14:09 schrieb Jean LEE:

Hello,
 
I'm new to CVS and I would like to install a cvs server on a linux worksation and a cvs client on a WinXP workstation. I would like to access the cvs server with a secure protocol.
 
What are the tools (cvs, wincvs, cvsnt, ...) and protocol (gserver, ssh,...) which are required or best suited for this application ?
 
Thanks for any help.
 
Jean
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Version numbers question

2004-06-03 Thread Mala T
Hi
Sorry for the long mail.

I have 2 questions about version numbers. First, is
there any limit on the number of versions we can have
for a file in cvs? Suppose we keep updating a file
from 1.1. If there are 200 revisions, will it be 1.200
and so on? Upto what number does it get incremented?
will it ever be 2.1 and so on without our explicitly
making it so using the -r on check-in?


And I have a question about 2 files that are on the
same branch and have logs as below


RCS file:
/cvsrep/cvsroot/OP/op/asos/src/java/com/sbc/orderprocessor/orderEngineAdapter/OEAdapter.java,v
Working file: OEAdapter.java
head: 1.1
branch: 1.1.1
locks: strict
access list:
symbolic names:
op_crm1_052504_preprod: 1.1.1.1
op_crm1_051704_QC: 1.1.1.1
op_crm2a-1_050504_QC: 1.1.1.1
Br_04-20-04_CRMR2a_Dev: 1.1.1.1.0.4
Tag_04-20-04_CRMR2a_Dev: 1.1.1.1
Tag_03-30-04_CRMR1_Prod: 1.1.1.1
start: 1.1.1.1
yoyo: 1.1.1
keyword substitution: kv
total revisions: 3; selected revisions: 3
description:

revision 1.1
date: 2004/03/30 23:10:32;  author: mt5921;  state:
Exp;
branches:  1.1.1;
Initial revision

revision 1.1.1.1
date: 2004/03/30 23:10:32;  author: mt5921;  state:
Exp;  lines: +0 -0
branches:  1.1.1.1.4;
WR# TAR# Initial check-in for OP

revision 1.1.1.1.4.1
date: 2004/05/15 18:09:10;  author: sc5869;  state:
Exp;  lines: +3 -0
Task312: WR#4146 TAR#3878 Made Changes to the
OEAdapter.java files for populating new schemas
-

2nd file:

RCS file:
/cvsrep/cvsroot/OP/op/asos/src/java/com/sbc/orderprocessor/asiTranslator/Processor.java,v
Working file: Processor.java
head: 1.7
branch:
locks: strict
access list:
symbolic names:
op_crm1_052504_preprod: 1.7
op_crm1_051704_QC: 1.6
op_crm2a-1_050504_QC: 1.4
Br_04-20-04_CRMR2a_Dev: 1.4.0.2
Tag_04-20-04_CRMR2a_Dev: 1.4
Tag_03-30-04_CRMR1_Prod: 1.1.1.1
start: 1.1.1.1
yoyo: 1.1.1
keyword substitution: kv
total revisions: 9; selected revisions: 9
description:

revision 1.7
date: 2004/05/21 00:02:49;  author: rt5647;  state:
Exp;  lines: +19 -11
Task375: WR#3626c TAR#3737 spread the orders across
all channels and sub channels

revision 1.6
date: 2004/05/18 00:50:01;  author: sy5429;  state:
Exp;  lines: +4 -2
Task345: WR#3626c TAR#3914 Removed some extra verbose
debugging messages

revision 1.5
date: 2004/05/17 21:13:01;  author: sy5429;  state:
Exp;  lines: +44 -157
Task332: WR#3626c TAR#3914 Modified to use digests for
performance enhancements

revision 1.4
date: 2004/04/15 22:30:38;  author: sy5429;  state:
Exp;  lines: +33 -24
branches:  1.4.2;
Task20: WR#3626c TAR#3363 Performance testing fixes
Task20: - Added the code to split the orders into n
channels configurable through
Task20:the configFile
Task20:

revision 1.3
date: 2004/04/15 18:08:28;  author: sy5429;  state:
Exp;  lines: +166 -65
Task13: Task12: Task11: WR#3525c TAR#
Task13: Task12: Task11: - To fix the issue where
response listener sits idly, processing nothing
Task13: Task12: Task11: - To split the orders n-way
between n channels configurable through configFile.zml
Task13: Task12: Task11: - To add the HostName to the
subject of the NotifyHandler emails
Task13: Task12: Task11:

revision 1.2
date: 2004/04/01 21:43:30;  author: sy5429;  state:
Exp;  lines: +821 -647
WR#3626c TAR#
- Changed the code to conform to the restructured job
scheduler APIs

revision 1.1
date: 2004/03/30 23:10:33;  author: mt5921;  state:
Exp;
branches:  1.1.1;
Initial revision

revision 1.1.1.1
date: 2004/03/30 23:10:33;  author: mt5921;  state:
Exp;  lines: +0 -0
WR# TAR# Initial check-in for OP

revision 1.4.2.1
date: 2004/05/08 22:35:16;  author: sy5429;  state:
Exp;  lines: +7 -18
Task284:  WR#4146 TAR#3709 Fixed the code to not
filter out the SNET orders


For Processor.java, looks like there was already a
branch when I made the initial import (1.1.1.1.4)? How
can that be? I don't understand what went wrong..Can
someone explain this?

Thanks a lot.

Mala






__
Do you Yahoo!?
Friends.  Fun.  Try the all-new Yahoo! Messenger.
http://messenger.yahoo.com/ 


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Version numbers question

2004-06-03 Thread Larry Jones
Mala T writes:
 
 I have 2 questions about version numbers. First, is
 there any limit on the number of versions we can have
 for a file in cvs?

Only the maximum value of an integer on your system and the amount of
disk space you have available to hole the repository.

 will it ever be 2.1 and so on without our explicitly
 making it so using the -r on check-in?

No.

 For Processor.java, looks like there was already a
 branch when I made the initial import (1.1.1.1.4)?

No, the branch was created after the import.  Since you hadn't made any
local changes to the file before the branch was created, the branch was
rooted at the imported version on the vendor branch rather than being
rooted on the trunk.  That's perfectly normal and nothing to worry
about.

-Larry Jones

That gives me a FABULOUS idea. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Re: Fwd: basic question

2004-06-03 Thread Larry Jones
Alex v.Below writes:
 
 If you need to control read/write permissions, I suggest a pserver 
 combined with an ssh tunnel.

There's usually no need for such complication, just use pure ssh with
normal OS permissions to control access.

-Larry Jones

What a waste to be going to school on a morning like this. -- Calvin


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


Branch/merge question....

2004-06-01 Thread Urban Gabor
Hi,

I have a rather specific issue here:

Suppose we have created a branch for a development in our
module called branch_A for a longer time. During the
development we have decided to intagrate all changes on the
main branch into branch_A (and we have tagged both the
main/HEAD and the branch). After completing the task, we are
to integrate the branch into the main, but the second
merging brings out a rather annoying number of conflicts.
The situation is the same when we try to merga main into
branch_A again.

As far as I know, the merge algorithm uses the younges
common ancestor of the source files. Am I able to set the
merga base to the last successfull integration? I recon this
would blow away some of our conflicts..

Thx in advance,

Gabaux
Linux is like a wigwam: no gates, no windows, and an apache
inside!


___
Info-cvs mailing list
[EMAIL PROTECTED]
http://lists.gnu.org/mailman/listinfo/info-cvs


<    1   2   3   4   5   6   7   8   9   10   >