You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Henry LS <he...@gmail.com> on 2007/03/26 03:02:33 UTC

Create task (logical group of files)?

Hi all,

I am new to subversion. Had some experience with VSS. My first question is I
tried to just check out few files but seems svn doesn't allow this... It
only allow me to check out folder. We have groups of files always need to be
changed together. They all exist in one folder.  I was just wondering if I
can create something like "task" to logically group a number of files
together (instead of creating sub-folders)?  Then check in, check out,
change and undo change based on those logical groups... The concept
ChangeSet looks similar to what I am looking for, but there is not much
explanation on how Changeset works... Can anybody shed some light on it?
Thank you.

HS

Re: Create task (logical group of files)?

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Mar 26, 2007, at 02:10, Henry LS wrote:

>> Why wouldn't you just check out the entire set of files? Work on the
>> files you need to work on, then commit them. Maybe for your next
>> "task" you'll need different files, and you'll already have them
>> since you checked out everything.
>
> I used to do what you said above when working on my previous  
> project. However for the current one, we have a group of 15  
> developers frequently update the system and we normally have 2-3  
> ppl working on the same subsystem...

Ok, no problem in Subversion...

> So in any minute, the local copy could become a outdated legacy  
> version.

Yessss.... but so what? Either your changes can stand alone, in which  
case this is not a problem, or your changes depend on the other  
developers', in which case you should coordinate your work with those  
other developers.

> We are kin to check out as less code as possible

If the reason here is just to save disk space, then I can only point  
out that Subversion philosophy is that disk space is cheap. If the  
concern is bandwidth, then it needn't be, since Subversion only  
transmits deltas over the wire. The initial checkout will take some  
time if you have many and/or very large files, but after that, you  
have it on your machine, and when you update you will only receive  
the updates, which should be relatively quick unless you are changing  
many large (e.g. binary) files very often.

> and always try to test our development with the newest runnable  
> code from other team members kept in a centralized version control  
> system. Not quite sure if this is achievable though...Still trying  
> to work it out.

If it's essential that all developers always have the absolutely  
latest code the instant it's checked in, consider setting up a commit  
mailing list or RSS feed to which your developers subscribe. When  
they see a new revision committed, they can update their working  
copies to retrieve it.


-- 

To reply to the mailing list, please use your mailer's Reply To All  
function


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

Re: Create task (logical group of files)?

Posted by Henry LS <he...@gmail.com>.
> Why wouldn't you just check out the entire set of files? Work on the
> files you need to work on, then commit them. Maybe for your next
> "task" you'll need different files, and you'll already have them
> since you checked out everything.
>
>
I used to do what you said above when working on my previous project.
However for the current one, we have a group of 15 developers frequently
update the system and we normally have 2-3 ppl working on the same
subsystem... So in any minute, the local copy could become a outdated legacy
version.  We are kin to check out as less code as possible and always try to
test our development with the newest runnable code from other team members
kept in a centralized version control system. Not quite sure if this is
achievable though...Still trying to work it out.

Cheers,
Henry

Re: Create task (logical group of files)?

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Mar 25, 2007, at 23:45, Henry LS wrote:

> Thank you for your prompt answer. Just the information I was  
> looking for. Our current version control system (commercial  
> software)  allow us to create tasks, then associate a number of  
> files with the task. Developers can then check out a task. It will  
> check out all files grouped under that task. I like this feature. I  
> was just trying to find a equivalent in Subversion. Subversion  
> might want to add such a feature...

Why wouldn't you just check out the entire set of files? Work on the  
files you need to work on, then commit them. Maybe for your next  
"task" you'll need different files, and you'll already have them  
since you checked out everything.

Note that in Subversion, "checking out" doesn't lock the files or  
anything, like in some other version control systems. Any number of  
people can check out any number of files from the repository and  
commit them whenever they feel like it.

There is of course the ability to lock files in Subversion, and even  
the ability to configure Subversion to require certain files to be  
locked before they can be committed, but that is not the default  
behavior.


-- 

To reply to the mailing list, please use your mailer's Reply To All  
function


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

Re: Create task (logical group of files)?

Posted by Henry LS <he...@gmail.com>.
Guys,

Thank you for your input. Forgot to mention, due to some network and
hardware constrain, we can't compile and run the application on our local
machine... We have to submit our files to a test repo and then compile and
run it from there. That is probably a main reason for not checkout the whole
project... coz we are not going to use most of the files locally anyway...

RSS feed idea sounds great. Thx for that.  Hopefully we will see "sparse
directories" very soon... We really need that feature.


On 3/26/07, Tom Malia <to...@ttdsinc.com> wrote:
>
>  By the way Henry,
>
>
>
> I can completely understand and relate to how and why being about to
> logically group files by something like "task" could be desirable.  Although
> everything others have said about how and why you can get the same
> functional result by simply checking out the full directory is true, I can
> see scenarios where it's not a case of can you physically do the same thing
> in SVN? But rather, as a developer, there could be great advantage in being
> able to relate a set of files with a task.  It's an issue of facilitating
> the developer's "memory".  As a developer, I may know of a "task" that I
> need to work on, but may not remember exactly which files need to be updated
> for that task.  If there's a mechanism to map files to tasks when the task
> is defined, then as a developer, I can check the "task" out and so "Oh, ya,
> that's right, I'm potentially going to make changes in these  5 or 6 files".
>  Instead of checking an entire directory out and then staring at possibly
> 100 or more files saying "now… which of these files do I care about again?"
>
>
>
>
>
>
>  ------------------------------
>
> *From:* Tom Malia [mailto:tommalia@ttdsinc.com]
> *Sent:* Monday, March 26, 2007 8:04 AM
> *To:* 'Henry LS'; 'Troy Curtis Jr'
> *Cc:* users@subversion.tigris.org
> *Subject:* RE: Create task (logical group of files)?
>
>
>
> Henry,
>
>
>
> I believe one feature that is due in an upcoming release of SVN that might
> be helpful here is "sparse directories" (or at least I think that's the name
> of it).  My understanding is that this feature will let you check out less
> than the full set of files from a directory.  Once this feature is present,
> perhaps it will be possible to create checkout scripts that can come close
> to duplicating the functionality you're looking for,
>
>
>
>
>
>
>  ------------------------------
>
> *From:* Henry LS [mailto:henrylsun@gmail.com]
> *Sent:* Sunday, March 25, 2007 11:46 PM
> *To:* Troy Curtis Jr
> *Cc:* users@subversion.tigris.org
> *Subject:* Re: Create task (logical group of files)?
>
>
>
> Hi Troy,
>
> Thank you for your prompt answer. Just the information I was looking for.
> Our current version control system (commercial software)  allow us to create
> tasks, then associate a number of files with the task. Developers can then
> check out a task. It will check out all files grouped under that task. I
> like this feature. I was just trying to find a equivalent in Subversion.
> Subversion might want to add such a feature...
>
> Cheers,
> Henry
>
>  On 3/26/07, *Troy Curtis Jr* <tr...@gmail.com> wrote:
>
> On 3/25/07, Henry LS <he...@gmail.com> wrote:
> > Hi all,
> >
> > I am new to subversion. Had some experience with VSS. My first question
> is I
> > tried to just check out few files but seems svn doesn't allow this... It
>
> > only allow me to check out folder. We have groups of files always need
> to be
> > changed together. They all exist in one folder.  I was just wondering if
> I
> > can create something like "task" to logically group a number of files
> > together (instead of creating sub-folders)?  Then check in, check out,
> > change and undo change based on those logical groups... The concept
> > ChangeSet looks similar to what I am looking for, but there is not much
> > explanation on how Changeset works... Can anybody shed some light on it?
> > Thank you.
> >
> > HS
>
> Subversion versions directory trees so the smallest unit that can be
> checked out and in is a directory.  One reason is that it needs a
> directory to put it's administrative folder (.svn) which is used to
> track all of the Subversion specific meta-data and information for the
> directory and the files/directories it contains.
>
> Every commit to the Subversion repository results in the increase of
> the repository revision number.  This commit could contain one, or
> multiple files.  In either case it represents a single commit, or
> "Change Set".  If you want changes to a set of files to be grouped
> together in a "Change Set", simply make sure that a 'svn ci' operation
> includes them all.
>
> I think that I may see were you were trying to go with that last
> paragraph.  You want a logical change set "item" in the repository
> that you can check into and out of.  That isn't what a change set in
> Subversion means.  You cannot go back and modify some arbitrary change
> set (aka revision), you simply commit new revisions (each revision is
> a change set).  So you will have to use subdirectories to accomplish
> what you want.
>
> Troy
> --
> "Beware of spyware. If you can, use the Firefox browser." - USA Today
> Download now at http://getfirefox.com
> Registered Linux User #354814 ( http://counter.li.org/)
>
>
>

RE: Create task (logical group of files)?

Posted by Tom Malia <to...@ttdsinc.com>.
By the way Henry,

 

I can completely understand and relate to how and why being about to
logically group files by something like "task" could be desirable.  Although
everything others have said about how and why you can get the same
functional result by simply checking out the full directory is true, I can
see scenarios where it's not a case of can you physically do the same thing
in SVN? But rather, as a developer, there could be great advantage in being
able to relate a set of files with a task.  It's an issue of facilitating
the developer's "memory".  As a developer, I may know of a "task" that I
need to work on, but may not remember exactly which files need to be updated
for that task.  If there's a mechanism to map files to tasks when the task
is defined, then as a developer, I can check the "task" out and so "Oh, ya,
that's right, I'm potentially going to make changes in these  5 or 6 files".
Instead of checking an entire directory out and then staring at possibly 100
or more files saying "now. which of these files do I care about again?"

 

 

 

  _____  

From: Tom Malia [mailto:tommalia@ttdsinc.com] 
Sent: Monday, March 26, 2007 8:04 AM
To: 'Henry LS'; 'Troy Curtis Jr'
Cc: users@subversion.tigris.org
Subject: RE: Create task (logical group of files)?

 

Henry,

 

I believe one feature that is due in an upcoming release of SVN that might
be helpful here is "sparse directories" (or at least I think that's the name
of it).  My understanding is that this feature will let you check out less
than the full set of files from a directory.  Once this feature is present,
perhaps it will be possible to create checkout scripts that can come close
to duplicating the functionality you're looking for,

 

 

 

  _____  

From: Henry LS [mailto:henrylsun@gmail.com] 
Sent: Sunday, March 25, 2007 11:46 PM
To: Troy Curtis Jr
Cc: users@subversion.tigris.org
Subject: Re: Create task (logical group of files)?

 

Hi Troy, 

Thank you for your prompt answer. Just the information I was looking for.
Our current version control system (commercial software)  allow us to create
tasks, then associate a number of files with the task. Developers can then
check out a task. It will check out all files grouped under that task. I
like this feature. I was just trying to find a equivalent in Subversion.
Subversion might want to add such a feature... 

Cheers,
Henry



On 3/26/07, Troy Curtis Jr <tr...@gmail.com> wrote:

On 3/25/07, Henry LS <he...@gmail.com> wrote:
> Hi all,
>
> I am new to subversion. Had some experience with VSS. My first question is
I
> tried to just check out few files but seems svn doesn't allow this... It 
> only allow me to check out folder. We have groups of files always need to
be
> changed together. They all exist in one folder.  I was just wondering if I
> can create something like "task" to logically group a number of files 
> together (instead of creating sub-folders)?  Then check in, check out,
> change and undo change based on those logical groups... The concept
> ChangeSet looks similar to what I am looking for, but there is not much 
> explanation on how Changeset works... Can anybody shed some light on it?
> Thank you.
>
> HS

Subversion versions directory trees so the smallest unit that can be
checked out and in is a directory.  One reason is that it needs a 
directory to put it's administrative folder (.svn) which is used to
track all of the Subversion specific meta-data and information for the
directory and the files/directories it contains.

Every commit to the Subversion repository results in the increase of 
the repository revision number.  This commit could contain one, or
multiple files.  In either case it represents a single commit, or
"Change Set".  If you want changes to a set of files to be grouped
together in a "Change Set", simply make sure that a 'svn ci' operation
includes them all.

I think that I may see were you were trying to go with that last
paragraph.  You want a logical change set "item" in the repository 
that you can check into and out of.  That isn't what a change set in
Subversion means.  You cannot go back and modify some arbitrary change
set (aka revision), you simply commit new revisions (each revision is 
a change set).  So you will have to use subdirectories to accomplish
what you want.

Troy
--
"Beware of spyware. If you can, use the Firefox browser." - USA Today
Download now at http://getfirefox.com
Registered Linux User #354814 ( http://counter.li.org/)

 


RE: Create task (logical group of files)?

Posted by Tom Malia <to...@ttdsinc.com>.
Henry,

 

I believe one feature that is due in an upcoming release of SVN that might
be helpful here is "sparse directories" (or at least I think that's the name
of it).  My understanding is that this feature will let you check out less
than the full set of files from a directory.  Once this feature is present,
perhaps it will be possible to create checkout scripts that can come close
to duplicating the functionality you're looking for,

 

 

 

  _____  

From: Henry LS [mailto:henrylsun@gmail.com] 
Sent: Sunday, March 25, 2007 11:46 PM
To: Troy Curtis Jr
Cc: users@subversion.tigris.org
Subject: Re: Create task (logical group of files)?

 

Hi Troy, 

Thank you for your prompt answer. Just the information I was looking for.
Our current version control system (commercial software)  allow us to create
tasks, then associate a number of files with the task. Developers can then
check out a task. It will check out all files grouped under that task. I
like this feature. I was just trying to find a equivalent in Subversion.
Subversion might want to add such a feature... 

Cheers,
Henry




On 3/26/07, Troy Curtis Jr <tr...@gmail.com> wrote:

On 3/25/07, Henry LS <he...@gmail.com> wrote:
> Hi all,
>
> I am new to subversion. Had some experience with VSS. My first question is
I
> tried to just check out few files but seems svn doesn't allow this... It 
> only allow me to check out folder. We have groups of files always need to
be
> changed together. They all exist in one folder.  I was just wondering if I
> can create something like "task" to logically group a number of files 
> together (instead of creating sub-folders)?  Then check in, check out,
> change and undo change based on those logical groups... The concept
> ChangeSet looks similar to what I am looking for, but there is not much 
> explanation on how Changeset works... Can anybody shed some light on it?
> Thank you.
>
> HS

Subversion versions directory trees so the smallest unit that can be
checked out and in is a directory.  One reason is that it needs a 
directory to put it's administrative folder (.svn) which is used to
track all of the Subversion specific meta-data and information for the
directory and the files/directories it contains.

Every commit to the Subversion repository results in the increase of 
the repository revision number.  This commit could contain one, or
multiple files.  In either case it represents a single commit, or
"Change Set".  If you want changes to a set of files to be grouped
together in a "Change Set", simply make sure that a 'svn ci' operation
includes them all.

I think that I may see were you were trying to go with that last
paragraph.  You want a logical change set "item" in the repository 
that you can check into and out of.  That isn't what a change set in
Subversion means.  You cannot go back and modify some arbitrary change
set (aka revision), you simply commit new revisions (each revision is 
a change set).  So you will have to use subdirectories to accomplish
what you want.

Troy
--
"Beware of spyware. If you can, use the Firefox browser." - USA Today
Download now at http://getfirefox.com
Registered Linux User #354814 ( http://counter.li.org/)

 


Re: Create task (logical group of files)?

Posted by Henry LS <he...@gmail.com>.
Hi Troy,

Thank you for your prompt answer. Just the information I was looking for.
Our current version control system (commercial software)  allow us to create
tasks, then associate a number of files with the task. Developers can then
check out a task. It will check out all files grouped under that task. I
like this feature. I was just trying to find a equivalent in Subversion.
Subversion might want to add such a feature...

Cheers,
Henry



On 3/26/07, Troy Curtis Jr <tr...@gmail.com> wrote:
>
> On 3/25/07, Henry LS <he...@gmail.com> wrote:
> > Hi all,
> >
> > I am new to subversion. Had some experience with VSS. My first question
> is I
> > tried to just check out few files but seems svn doesn't allow this... It
> > only allow me to check out folder. We have groups of files always need
> to be
> > changed together. They all exist in one folder.  I was just wondering if
> I
> > can create something like "task" to logically group a number of files
> > together (instead of creating sub-folders)?  Then check in, check out,
> > change and undo change based on those logical groups... The concept
> > ChangeSet looks similar to what I am looking for, but there is not much
> > explanation on how Changeset works... Can anybody shed some light on it?
> > Thank you.
> >
> > HS
>
> Subversion versions directory trees so the smallest unit that can be
> checked out and in is a directory.  One reason is that it needs a
> directory to put it's administrative folder (.svn) which is used to
> track all of the Subversion specific meta-data and information for the
> directory and the files/directories it contains.
>
> Every commit to the Subversion repository results in the increase of
> the repository revision number.  This commit could contain one, or
> multiple files.  In either case it represents a single commit, or
> "Change Set".  If you want changes to a set of files to be grouped
> together in a "Change Set", simply make sure that a 'svn ci' operation
> includes them all.
>
> I think that I may see were you were trying to go with that last
> paragraph.  You want a logical change set "item" in the repository
> that you can check into and out of.  That isn't what a change set in
> Subversion means.  You cannot go back and modify some arbitrary change
> set (aka revision), you simply commit new revisions (each revision is
> a change set).  So you will have to use subdirectories to accomplish
> what you want.
>
> Troy
> --
> "Beware of spyware. If you can, use the Firefox browser." - USA Today
> Download now at http://getfirefox.com
> Registered Linux User #354814 ( http://counter.li.org/)
>

Re: Create task (logical group of files)?

Posted by Troy Curtis Jr <tr...@gmail.com>.
On 3/25/07, Henry LS <he...@gmail.com> wrote:
> Hi all,
>
> I am new to subversion. Had some experience with VSS. My first question is I
> tried to just check out few files but seems svn doesn't allow this... It
> only allow me to check out folder. We have groups of files always need to be
> changed together. They all exist in one folder.  I was just wondering if I
> can create something like "task" to logically group a number of files
> together (instead of creating sub-folders)?  Then check in, check out,
> change and undo change based on those logical groups... The concept
> ChangeSet looks similar to what I am looking for, but there is not much
> explanation on how Changeset works... Can anybody shed some light on it?
> Thank you.
>
> HS

Subversion versions directory trees so the smallest unit that can be
checked out and in is a directory.  One reason is that it needs a
directory to put it's administrative folder (.svn) which is used to
track all of the Subversion specific meta-data and information for the
directory and the files/directories it contains.

Every commit to the Subversion repository results in the increase of
the repository revision number.  This commit could contain one, or
multiple files.  In either case it represents a single commit, or
"Change Set".  If you want changes to a set of files to be grouped
together in a "Change Set", simply make sure that a 'svn ci' operation
includes them all.

I think that I may see were you were trying to go with that last
paragraph.  You want a logical change set "item" in the repository
that you can check into and out of.  That isn't what a change set in
Subversion means.  You cannot go back and modify some arbitrary change
set (aka revision), you simply commit new revisions (each revision is
a change set).  So you will have to use subdirectories to accomplish
what you want.

Troy
-- 
"Beware of spyware. If you can, use the Firefox browser." - USA Today
Download now at http://getfirefox.com
Registered Linux User #354814 ( http://counter.li.org/)

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