View topic - CVS vs SVN for QNX

CVS vs SVN for QNX

Discussion about the general applications that run on QNX6

Postby mario » Thu Dec 04, 2008 5:15 pm

I didn`t see your question !?!? Maybe I miss understood what you meant by "SVN bulk of question"
mario
QNX Master
 
Posts: 4132
Joined: Sun Sep 01, 2002 1:04 am

Postby juanplacco » Fri Dec 05, 2008 2:48 pm

Sorry Mario, my "bulk" of questions were the only 3 you already answered me!. Thank you! But...

I was trying the ideas you give me (they're very good ones, and what I was lookig for), but I realize one simple thing. After commiting some module of the project, the "Last Changed Rev" number returned by "svn info" is not updated until "svn update" is run (maybe in the root of the project to keep your $ROOTPATH updated too. Right?) ... If not, "svn info" returns an old Rev number. So, do you make "svn update in the root" after every commit?, and just "after that" you compile in order to hook the correct Rev into your ELF?

How do you manage this (expected) behavior of svn?.

Thank you very much again!

Regards,
Juan Manuel
juanplacco
Senior Member
 
Posts: 318
Joined: Wed May 17, 2006 2:30 pm

Postby mario » Fri Dec 05, 2008 2:53 pm

Our release procedure imply that we grab the source from scratch. It's true that for non release this problem needs to be address but I haven't got to that ;-) Maybe a simple svn update in the makefile would do it.
mario
QNX Master
 
Posts: 4132
Joined: Sun Sep 01, 2002 1:04 am

Postby juanplacco » Fri Dec 05, 2008 3:04 pm

Yes... I was thinking the same idea... could work!

Thanks for all Mario !
juanplacco
Senior Member
 
Posts: 318
Joined: Wed May 17, 2006 2:30 pm

Postby juanplacco » Wed Dec 10, 2008 4:47 pm

Hey... I was thinking that doing 'svn update' in the Makefile could be a little dangerous...

If somebody else has modified the repository previously, the svn update will 'update' the source, and then I'll compile something I just don't know what actually is...

I think the only way of having the lastest version to hook inside de executable is a manual and careful 'svn update' (after svn status) before compiling...

What do you think?
juanplacco
Senior Member
 
Posts: 318
Joined: Wed May 17, 2006 2:30 pm

Postby mario » Wed Dec 10, 2008 5:09 pm

If you want to be 100% sure you need to create a branch or a tag and work from that.
mario
QNX Master
 
Posts: 4132
Joined: Sun Sep 01, 2002 1:04 am

Postby juanplacco » Wed Dec 10, 2008 6:40 pm

Mario,

Why do you attach to (let's say...) 'your_exec' the "Last Changed Rev" into the use message? Don't you think would be more informative, to attach just the (global) "Revision" number of the repository?

Suppose that 'your_exec' is linking against some 'libX' which is in other directory of the tree structure. And that version change several times after the last change in your_exec. When you rebuild your_exec (because libX changed, not your_exec), the version attached to it will not tell you anything about the revision number of the libX linked. But if you attach just 'Revision' (parsing svn info), this number is global to the "enterly tree structure", so you can know that your_exec is linking against that version of libX.

I am explaining myself?

If your_exec does not change but the libX yes, the number you are attaching to your_exec will be always the same... but libX is different each time... and your_exec just doesn't realize that libX is changing...

How does it work?. I could be wrong...

Hey! Thank you again!

Regards,
Juan Manuel
juanplacco
Senior Member
 
Posts: 318
Joined: Wed May 17, 2006 2:30 pm

Postby mario » Wed Dec 10, 2008 7:26 pm

juanplacco wrote:Mario,

Why do you attach to (let's say...) 'your_exec' the "Last Changed Rev" into the use message? Don't you think would be more informative, to attach just the (global) "Revision" number of the repository?

Suppose that 'your_exec' is linking against some 'libX' which is in other directory of the tree structure. And that version change several times after the last change in your_exec. When you rebuild your_exec (because libX changed, not your_exec), the version attached to it will not tell you anything about the revision number of the libX linked. But if you attach just 'Revision' (parsing svn info), this number is global to the "enterly tree structure", so you can know that your_exec is linking against that version of libX.

I am explaining myself?

If your_exec does not change but the libX yes, the number you are attaching to your_exec will be always the same... but libX is different each time... and your_exec just doesn't realize that libX is changing...

How does it work?. I could be wrong...

Hey! Thank you again!

Regards,
Juan Manuel


You are right but that scenario does not exists for us. The project is self contain and we run the svn info from the root directory of the project. Our repository doesn't contain various project that are unrelated. We will try to split them into different repository at some point in time. In the mean time using the lastRev means if a commit is done on a different project or even branch for that matter the last rev number will not magically change after doing svn info.
mario
QNX Master
 
Posts: 4132
Joined: Sun Sep 01, 2002 1:04 am

Postby juanplacco » Wed Dec 10, 2008 7:51 pm

In our case, I think attaching 'Revision' of svn info, is enough for our needs and we can keep track every executable with the same idea you give me with get_version.ch !

Thank you!!

Regards,
Juan Manuel
juanplacco
Senior Member
 
Posts: 318
Joined: Wed May 17, 2006 2:30 pm

Previous

Return to QNX6 - Applications

Who is online

Users browsing this forum: No registered users and 1 guest

cron