Discussion:
cvs commit command using absolute path
Sunil Saxena
2010-01-22 01:58:49 UTC
Permalink
Hi,

In cvs, "commit" command is it possible to specify absolute path
instead of relative path during checkin of file ?
Need to checkin the build jars into CVS automatically

I have ant build scripts in : /export/home/apache-ant-1.7.1 directory

Relative Path of jar in cvs :project-details/CompiledJars/
environments.jar


Build can be processed in following paths
/test/path1
OR
/test/path2

So jar will be created / updated by build process in
/test/path1/project-details/CompiledJars/environments.jar
OR
/test/path2/project-details/CompiledJars/environments.jar



Relative Path like this would work from /test/path2 directory
cvs -d $cv commit -m "no message" project-details/CompiledJars/
environments.jar project-details/CompiledJars/environments.jar



But would require absolute path, Is it directly possible to pass
absolute path to cvs commit command ?

Something like this ..... [ this doesnt work]
1) Run the ant script from /export/home/apache-ant-1.7.1
2) cvs -d $cvs.root commit -m "no message" /test/path2/project-details/
CompiledJars/environments.jar project-details/CompiledJars/
environments.jar
Considering,
/test/path2/project-details/CompiledJars/
environments.jar = Absolute path of jar on local machine
project-details/CompiledJars/environments.jar =
Relative / Absolute Path of jar in CVS


Could you please help me out with the same

Regards,
Sunil
Larry Jones
2010-01-24 21:05:59 UTC
Permalink
Post by Sunil Saxena
But would require absolute path, Is it directly possible to pass
absolute path to cvs commit command ?
No. It probably should be, but there are a number of implementation
details that make it very difficult to support and no one has ever done
so. The workaround is to cd to the appropriate directory before doing
the commit:

(cd /test/path2/project-details/CompiledJars &&
cvs -d $cvs.root commit -m "no message" environments.jar)
--
Larry Jones

Another casualty of applied metaphysics. -- Hobbes
sunil1234
2010-04-26 23:48:18 UTC
Permalink
i am making a build application
i am using CVS along with ANT to checkout file revision from CVS.

Following command is used:
<cvs cvsRoot="${cvs.root}" command="checkout -r ${file.revision.number}
${file.path}/${file.name}" dest="${build.src.path}" > </cvs>

Error message is thrown by CVS when file-name of file-path is incorrect.
But only get warning message when revision number of file-name is incorrect
.

Is there a way to generate error if the file-revision number of file is
incorrect ??
Would like the build to fail if the file-name / revision number of file is
invalid.
--
View this message in context: http://old.nabble.com/cvs-commit-command-using-absolute-path-tp27283411p28370678.html
Sent from the Gnu - Cvs - Info mailing list archive at Nabble.com.
Yao, Li Xun (Eric)
2010-04-28 00:06:29 UTC
Permalink
Question: multi developers working on different change sets at the same time and we want to have whichever change set pass user acceptance testing move to production first. We don't want to have each change set impact each other since some change set may need to rework several times. To do this I have to create branch for each change set and merge the change set back to chunk after the testing is completed, and then create release tag in trunk for production deployment. If there anyway to do it without branch?

This communication, including any attached documentation, is intended only for the person or entity to which it is addressed, and may contain confidential, personal and/or privileged information. Any unauthorized disclosure, copying, or taking action on the contents is strictly prohibited. If you have received this message in error, please contact us immediately so we may correct our records. Please then delete or destroy the original transmission and any subsequent reply.
Todd Denniston
2010-04-30 14:20:36 UTC
Permalink
Post by Yao, Li Xun (Eric)
multi developers working on different change sets at the same time
and we want to have whichever change set pass user acceptance testing move to production first.
We don't want to have each change set impact each other since
some change set may need to rework several times.
To do this I have to create branch for each change set and merge the
change set back to chunk after the testing is completed,
and then create release tag in trunk for production deployment.
If there anyway to do it without branch?
Yes. The developers can not check any changes from their sandbox in until Requirements 2 and 3 have
been satisfied. This however would risk loosing any known working states of the developers while
they rework.


Branches however help the developers stay sane while working under Requirements 2 and 3.


with what little you have written, it sounds as if the organization either is suffering from
"Branch-a-holic"
http://www.cmcrossroads.com/bradapp/acme/branching/pitfalls.html#BranchAholic
or
"Merge-mania"
http://www.cmcrossroads.com/bradapp/acme/branching/pitfalls.html#MergeMania

and someone (you?) is trying to take them to a "Merge-a-phobia" state
http://www.cmcrossroads.com/bradapp/acme/branching/pitfalls.html#MergePhobia

Brad Appleton has some decent ideas on how to work business practices (Requirements 2 and 3) into
configuration management systems
http://www.cmcrossroads.com/bradapp/acme/

my guess at why your org is suffering either "Branch-a-holic" or "Merge-mania" is because you are
Branching per task:
http://www.cmcrossroads.com/bradapp/acme/branching/patterns.html#BranchPerTask
http://www.cmcrossroads.com/bradapp/acme/branching/branch-creation.html#BranchPerTask
instead of Branching per major task, with a smattering of "Personal Activity Branch"'s as
workers/task leads see fit:
http://www.cmcrossroads.com/bradapp/acme/branching/branch-creation.html#BranchPerMajorTask
http://www.cmcrossroads.com/bradapp/acme/branching/branch-creation.html#PersonalBranch
but these are only guesses with limited information, use at your own risk.

<SNIP Obnoxious banner>
--
Todd Denniston
Crane Division, Naval Surface Warfare Center (NSWC Crane)
Harnessing the Power of Technology for the Warfighter
Arthur Barrett
2010-04-30 20:47:34 UTC
Permalink
Hi Eric,
Post by Yao, Li Xun (Eric)
Question: multi developers working on different change sets
at the same time and we want to have whichever change set
pass user acceptance testing move to production first. We
don't want to have each change set impact each other since
some change set may need to rework several times. To do this
I have to create branch for each change set and merge the
change set back to chunk after the testing is completed, and
then create release tag in trunk for production deployment.
If there anyway to do it without branch?
Todd has already supplied a direct answer to your question - my reply is
indirect.

CVS does not have any native support for a user defined 'change set'
(and neither does Subversion).

The CVSNT (NoT CVS) project 'forked' from CVS in 1998 with the intention
of adding features to support SCCM for commercial software developers -
features that for one reason or another would create controversy if
added to the original CVS.

CVSNT has had user defined change sets since 2005 (on windows, unix,
linux etc), they are usually described as 'bug numbers' in the manual.

Whilst it is not strictly technically necessary to have 'user defined
change set' support built into the version control software to implement
the methodology - it sure does make it easier.

Brad Appleton's articles that Todd referred you to are good, but are
showing their age (I think) - the links page was last updated in 1998!

This document is an extract from our commercial variant of CVSNT 'CVS
Suite' and describes working with change sets and promotion models
(PDF):
http://march-hare.com/cvspro/?pdf=u

The main CVSNT web site is:
http://www.cvsnt.org/

Regards,


Arthur Barrett

Loading...