You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Asif Haswarey <as...@qlogic.com> on 2004/08/24 21:13:07 UTC

How-to code freeze in Subversion?

Hi,

First of all, I'm wondering if there is a google group for Subversion?

I want to be able to do a code-freeze, where I am able to get a working
copy of each file revision, such that I can build a program for a previous
version.
If anyone is fimiliar with Sun Microsystem's Teamware included with their
Solaris C compiler, this can be done.

Example tree:

project/fibre-channel/
   main/file1.c
   file2.c
   scsi/file3.c
   file123.exe

file1.c [revisions: 1.1]
file2.c [revisions: 1.1, 1.2]
file3.c [revisions: 1.1, 1.2, 1.3]

To build a particular version of file123.exe:

file123.exe[1.3] = file1.c[1.1] + file2.c[1.2] + file3.c[1.3]
file123.exe[1.2] = file1.c[1.1] + file2.c[1.1] + file3.c[1.2]
file123.exe[1.1] = file1.c[1.1] + file2.c[1.1] + file3.c[1.1]

How do I perform a code-freeze such that I can retrieve all the
particular versions of all the files needed to build file123.exe[1.2] ?

Thanks for any help!

-Asif

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org


Re: How-to code freeze in Subversion?

Posted by Michael Mühlebach <mi...@anduin.ch>.
Ryan Flynn wrote:

>>To build a particular version of file123.exe:
>>
>>file123.exe[1.3] = file1.c[1.1] + file2.c[1.2] + file3.c[1.3]
>>file123.exe[1.2] = file1.c[1.1] + file2.c[1.1] + file3.c[1.2]
>>file123.exe[1.1] = file1.c[1.1] + file2.c[1.1] + file3.c[1.1]
>>
>>How do I perform a code-freeze such that I can retrieve all the
>>particular versions of all the files needed to build file123.exe[1.2] ?
>>
>>    
>>
> 
>Asif,
>
>when a change is commited, the entire repository gets a revision
>number. so even if file3.c is the only file commited as revision, say,
>5, then you can check the entire project out at -r5 and get the other
>files as they were at the time of the file3.c commit
>
>to get a extra copy: svn checkout -r5 url/path/to/proj proj-r5
>or update your current wc to r5: svn update -r5
>
>warning: i am pretty new to svn, use this advice with caution.
>
>hope this helps.
>  
>

In princip is this correct. But after 3 months of developing for example 
who could remember the exact revision number :-)
If you read the svn book: there is a example for the project layout: 
trunk, tags, branches! A "tag" would be a perfect idea for a freaze. In 
reality a tag in svn is nothing else than a copy you make from your 
trunk into a dir under tags: for example /tags/freeze_v1.0  or whatever.

-- Michael


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: How-to code freeze in Subversion?

Posted by Ryan Flynn <pa...@gmail.com>.
> To build a particular version of file123.exe:
> 
> file123.exe[1.3] = file1.c[1.1] + file2.c[1.2] + file3.c[1.3]
> file123.exe[1.2] = file1.c[1.1] + file2.c[1.1] + file3.c[1.2]
> file123.exe[1.1] = file1.c[1.1] + file2.c[1.1] + file3.c[1.1]
> 
> How do I perform a code-freeze such that I can retrieve all the
> particular versions of all the files needed to build file123.exe[1.2] ?
>
 
Asif,

when a change is commited, the entire repository gets a revision
number. so even if file3.c is the only file commited as revision, say,
5, then you can check the entire project out at -r5 and get the other
files as they were at the time of the file3.c commit

to get a extra copy: svn checkout -r5 url/path/to/proj proj-r5
or update your current wc to r5: svn update -r5

warning: i am pretty new to svn, use this advice with caution.

hope this helps.

pizza

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: How-to code freeze in Subversion?

Posted by Gary Feldman <g1...@marsdome.com>.
Keith Smith wrote:
> On Wed, 2004-08-25 at 13:31, Gary Feldman wrote:
> 
>>Note that if you follow their example, which is a URL to URL copy, you 
>>need to make sure that no one else checks anything in until you start 
>>the copy, otherwise you'll get their new version.
> 
> For the record, you don't need to hold up your team's work.  Just
> identify the revision you want to tag (which in your case appears to be
> that corresponding to your last commit), and pass that to svn copy using
> the --revision argument.

Sigh, you're right, of course.  It's late, and I've been doing so much 
work on dedicated branches recently where this wasn't an issue that I'd 
forgotten the details for working on a branch that other developers are on.

Gary

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: How-to code freeze in Subversion?

Posted by Keith Smith <ke...@pharos.co.nz>.
On Wed, 2004-08-25 at 13:31, Gary Feldman wrote:
> Note that if you follow their example, which is a URL to URL copy, you 
> need to make sure that no one else checks anything in until you start 
> the copy, otherwise you'll get their new version.

For the record, you don't need to hold up your team's work.  Just
identify the revision you want to tag (which in your case appears to be
that corresponding to your last commit), and pass that to svn copy using
the --revision argument.

Regards
Keith


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: How-to code freeze in Subversion?

Posted by Kenneth Porter <sh...@sewingwitch.com>.
--On Tuesday, August 24, 2004 9:31 PM -0400 Gary Feldman 
<g1...@marsdome.com> wrote:

>> First of all, I'm wondering if there is a google group for Subversion?
>
> Google groups are just Usenet newsgroups.  Many popular clients can deal
> with newsgroups and mail similarly, but mailing lists are easier to
> manage.  For a good archive of this mailing list, see
> http://www.contactor.se/~dast/svnusers/ .

Gmane carries the subversion lists:

<http://gmane.org/info.php?group=gmane.comp.version-control.subversion.user>

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org

Re: How-to code freeze in Subversion?

Posted by Gary Feldman <g1...@marsdome.com>.
Asif Haswarey wrote:

> First of all, I'm wondering if there is a google group for Subversion?

Google groups are just Usenet newsgroups.  Many popular clients can deal 
with newsgroups and mail similarly, but mailing lists are easier to 
manage.  For a good archive of this mailing list, see 
http://www.contactor.se/~dast/svnusers/ .


> I want to be able to do a code-freeze, where I am able to get a working
> copy of each file revision, such that I can build a program for a previous
> version.

The convention way for freezing snapshots in many source control 
systems, including Subversion, is to use tags.  For Subversion, 
typically there is a tags directory near the root of the repository, and 
you just do a copy of a stable tree into that tags directory, giving the 
tag a unique name.

See http://svnbook.red-bean.com/svnbook/ch04s06.html for an explanation. 
  Note that if you follow their example, which is a URL to URL copy, you 
need to make sure that no one else checks anything in until you start 
the copy, otherwise you'll get their new version.  It is easier and 
faster to use that method, and I use it myself, but I'm on a small 
development team so I can just ask people to hold off on checkins for a 
bit.  It is, however, safer to create the tag copy from a working copy 
that you know is correct.  This is discussed earlier in the chapter, 
under branches.

Make sure you have a good naming convention for tags, otherwise things 
will get confusing quickly.  Personally I'm fond of the convention that 
tags are in UPPER CASE, branches in lower case, but that's just a start.

Gary

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org