source control management for Octave

classic Classic list List threaded Threaded
32 messages Options
12
Reply | Threaded
Open this post in threaded view
|

source control management for Octave

Stéfan van der Walt
John,

Octave is currently being hosted in CVS -- but is there any reason why
we couldn't move over to Subversion?

The reason I ask, is because CVS makes it very difficult to work on
projects when you have a slow network connection.  To do simple
operations like "log" or "diff" requires an internet connection -- for
no good reason.

Subversion does not only address this problem, but a few others too
(for a more complete list see http://svnbook.red-bean.com/en/1.1/apa.html):

* Directories are managed
* Commits are atomic
* Secure access can be given to developers
  See http://www.chiark.greenend.org.uk/~sgtatham/svn.html

I am not sure whether any users currently have access to the
repository.  If none, then I would suggest an alternative option:
Mercurial.

If Octave is hosted in Mercurial, I can have a local repository on my
machine.  This means that I could work on complicated changes, and
pull your changes every day -- handling conflicts as they arise.  Once
I am done, I could simply export all the changes, and send it to you
either as a bundle or a patch.

If we opt for Mercurial, we do not need to lose the history.  'Tailor'
can be used to convert the current CVS repository (with all logs) to
Mercurial.

Whether Subversion or Mercurial, either would be a vast improvement
over CVS.

Regards
Stéfan

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

David Bateman-3
Stefan van der Walt wrote:

>John,
>
>Octave is currently being hosted in CVS -- but is there any reason why
>we couldn't move over to Subversion?
>
>The reason I ask, is because CVS makes it very difficult to work on
>projects when you have a slow network connection.  To do simple
>operations like "log" or "diff" requires an internet connection -- for
>no good reason.
>
>Subversion does not only address this problem, but a few others too
>(for a more complete list see http://svnbook.red-bean.com/en/1.1/apa.html):
>
>* Directories are managed
>* Commits are atomic
>* Secure access can be given to developers
>  See http://www.chiark.greenend.org.uk/~sgtatham/svn.html
>
>I am not sure whether any users currently have access to the
>repository.  If none, then I would suggest an alternative option:
>Mercurial.
>
>If Octave is hosted in Mercurial, I can have a local repository on my
>machine.  This means that I could work on complicated changes, and
>pull your changes every day -- handling conflicts as they arise.  Once
>I am done, I could simply export all the changes, and send it to you
>either as a bundle or a patch.
>
>If we opt for Mercurial, we do not need to lose the history.  'Tailor'
>can be used to convert the current CVS repository (with all logs) to
>Mercurial.
>
>Whether Subversion or Mercurial, either would be a vast improvement
>over CVS.
>
>Regards
>Stéfan
>
>  
>
I'd like to see such a change as well, with the proviso that the
overhead in porting octave to the new version system is addressed. I.E.
who is the poor sod who gets the jobs of setting up the server and
importing the existing tree.

Another advantage of subversion, is that we might combine it with TRAC
(http://projects.edgewall.com/trac/) and get a wiki bug tracking
interface as well with an e-mail gateway. In that case the octave wiki
should be ported into the TRAC wiki....

Cheers
David

--
David Bateman                                [hidden email]
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 1 69 35 77 01 (Fax)
91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as:

[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Bill Denney
In reply to this post by Stéfan van der Walt
On Wed, 5 Oct 2005, Stefan van der Walt wrote:

> If we opt for Mercurial, we do not need to lose the history.  'Tailor'
> can be used to convert the current CVS repository (with all logs) to
> Mercurial.

I'm reasonably sure that subversion also has CVS history import.

Bill

--
... "For instance, people who hate stories in which terrible things happen
to small children should put this book down immediately."
   -- Lemony Snicket, _A Series of Unfortunate Events: The Bad Beginning_

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Rafael Laboissiere
* Bill Denney <[hidden email]> [2005-10-05 13:55]:

> I'm reasonably sure that subversion also has CVS history import.

Be sure: http://cvs2svn.tigris.org/
 
--
Rafael

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

David Bateman-3
Rafael Laboissiere wrote:

>* Bill Denney <[hidden email]> [2005-10-05 13:55]:
>
>  
>
>>I'm reasonably sure that subversion also has CVS history import.
>>    
>>
>
>Be sure: http://cvs2svn.tigris.org/
>
>  
>
Expect that there is no CVS history in the octave CVS, its all in the
Changelog. All commits in the octave cvs were done with 'cvs commit -m
""'. This doesn't really make the importation easier, as it still makes
sense to keep the revisions and the tags..

D.

--
David Bateman                                [hidden email]
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 1 69 35 77 01 (Fax)
91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as:

[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Stéfan van der Walt
On Tue, Oct 11, 2005 at 02:55:31PM +0200, David Bateman wrote:
> >Be sure: http://cvs2svn.tigris.org/
> >
> Expect that there is no CVS history in the octave CVS, its all in the
> Changelog. All commits in the octave cvs were done with 'cvs commit -m
> ""'. This doesn't really make the importation easier, as it still makes
> sense to keep the revisions and the tags..

I don't think tags should pose any problem.  While I havn't tried
cvs2svn mentioned above, I have converted repositories to mercurial
format using tailor, preserving all relevant information.  Since
tailor supported CVS and Subversion long before Mercurial, I'll bet
that those conversion will run smoothly.

Is anyone with access to the current CVS repository listening?  If so,
any opinion?

Regards
Stéfan


Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Paul Kienzle
In reply to this post by David Bateman-3

On Oct 5, 2005, at 12:48 PM, David Bateman wrote:
> Another advantage of subversion, is that we might combine it with TRAC
> (http://projects.edgewall.com/trac/) and get a wiki bug tracking
> interface as well with an e-mail gateway. In that case the octave wiki
> should be ported into the TRAC wiki....

Do you know if the TRAC e-mail gateway is bidirectional?  From the docs
it looks like it handles outgoing mail but they don't talk about
incoming mail.

- Paul

Reply | Threaded
Open this post in threaded view
|

source control management for Octave

John W. Eaton-6
In reply to this post by Stéfan van der Walt
On  5-Oct-2005, Stefan van der Walt wrote:

| Octave is currently being hosted in CVS -- but is there any reason why
| we couldn't move over to Subversion?

David Bateman already mentioned that someone would have to do the work
to make the switch.

Also, those of us with write access to the real repository would have
to learn a new system.  I'd want to make sure that the switch was
really worth the effort.  Is Subversion that much better?  What about
arch?  Is either integrated with Emacs?

jwe

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Stéfan van der Walt
On Fri, Oct 14, 2005 at 02:47:11AM -0400, John W. Eaton wrote:
> On  5-Oct-2005, Stefan van der Walt wrote:
>
> | Octave is currently being hosted in CVS -- but is there any reason why
> | we couldn't move over to Subversion?
>
> David Bateman already mentioned that someone would have to do the work
> to make the switch.

I wouldn't mind doing it, but then I would need access to the server.
Otherwise, I can create all the necessary scripts on my side,
and you can simply modify and run them over there.  As I mentioned in
my previous e-mail, it takes all of 10 minutes.

> Also, those of us with write access to the real repository would have
> to learn a new system.  I'd want to make sure that the switch was
> really worth the effort.  Is Subversion that much better?  What about
> arch?  Is either integrated with Emacs?

Subversion is much more friendly than CVS.  You have truly atomic
commits, it handles directories, file deletes and moves correctly, it
branches without cost, it limits bandwidth usage etc. etc.  The
advantages are many, including that there is no learning curve
(subversion is basically cvs enhanced).

Arch is a nightmare -- the learning curve is very steep indeed.  A
package like Mercurial does the same thing, but in a logical and easy
to understand way.

And yes, there are emacs interfaces available for subversion.

Regards
Stéfan

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

David Bateman-3
Stefan van der Walt wrote:

>On Fri, Oct 14, 2005 at 02:47:11AM -0400, John W. Eaton wrote:
>  
>
>>On  5-Oct-2005, Stefan van der Walt wrote:
>>
>>| Octave is currently being hosted in CVS -- but is there any reason why
>>| we couldn't move over to Subversion?
>>
>>David Bateman already mentioned that someone would have to do the work
>>to make the switch.
>>    
>>
>
>I wouldn't mind doing it, but then I would need access to the server.
>Otherwise, I can create all the necessary scripts on my side,
>and you can simply modify and run them over there.  As I mentioned in
>my previous e-mail, it takes all of 10 minutes.
>  
>
If it only takes 10 minutes, perhaps the thing to do is to setup a trial
server with an imported octave-cvs tree somewhere as an example. Then
let people play with it a bit to get confortable, and then if John likes
it we can spend the 10 minutes again to import the real tree in its
permanent home.

Just need a server somewhere to be setup. I have a machine permanently
on the net, but as its a very old laptop (P2 200MHz) I'd rather not open
it up for a large number of users. Perhaps for the type of use this
trial implies it would be fine.. Or perhaps Stefan you have somewhere
else to setup the svn tree. If you want to use my machine contact me
off-line...

Regards
David

--
David Bateman                                [hidden email]
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 1 69 35 77 01 (Fax)
91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as:

[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Andy Adler
On Fri, 14 Oct 2005, David Bateman wrote:

> If it only takes 10 minutes, perhaps the thing to do is to setup a trial
> server with an imported octave-cvs tree somewhere as an example. Then
> let people play with it a bit to get confortable, and then if John likes
> it we can spend the 10 minutes again to import the real tree in its
> permanent home.
>
> Just need a server somewhere to be setup. I have a machine permanently
> on the net, but as its a very old laptop (P2 200MHz) I'd rather not open
> it up for a large number of users. Perhaps for the type of use this
> trial implies it would be fine.. Or perhaps Stefan you have somewhere
> else to setup the svn tree. If you want to use my machine contact me
> off-line...

What TCP ports need to be visible to allow SVN? I can offer a machine
with ssh and https, if that will do the trick.

--
Andy Adler <[hidden email]> 1(613)562-5800x6218


Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Stéfan van der Walt
On Fri, Oct 14, 2005 at 09:13:19AM -0400, Andy Adler wrote:

> On Fri, 14 Oct 2005, David Bateman wrote:
>
> > Just need a server somewhere to be setup. I have a machine permanently
> > on the net, but as its a very old laptop (P2 200MHz) I'd rather not open
> > it up for a large number of users. Perhaps for the type of use this
> > trial implies it would be fine.. Or perhaps Stefan you have somewhere
> > else to setup the svn tree. If you want to use my machine contact me
> > off-line...
>
> What TCP ports need to be visible to allow SVN? I can offer a machine
> with ssh and https, if that will do the trick.

All we need is ssh, or we can run it via apache if we wish to.

Stéfan

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

John W. Eaton-6
In reply to this post by David Bateman-3
On 14-Oct-2005, David Bateman wrote:

| I believe you want a tar of what is under CVSROOT. If that is the case,
| then the only one who can provide it is John. John could we have a tar
| of the octave CVSROOT, to test up a test server? We don't carry about it
| getting out of sync as its just to demonstrate the concepts of svn
| applied to octave?

In CVS, the CVSROOT directory has the administrative files for the
server.  The actual RCS files that make up the CVS history for Octave
are in a separate tree.  I think that is all you need.  Then you can
insert those files in your own cvs archive (with its own CVSROOT
directory, which determine how the archive is managed).  I've added
the octave-cvs files to the rsync server on www.octave.org.  You can
get all the files and keep them up to date with

  rsync -av www.octave.org::/octave-cvs/ ./octave-cvs/

If you just want to have a publicly accessible SVN archive that is
read-only, and the conversion from CVS to SVN can be automated, then
I think this should allow you to do that.

jwe

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Stéfan van der Walt
On Fri, Oct 14, 2005 at 12:03:45PM -0400, John W. Eaton wrote:
> In CVS, the CVSROOT directory has the administrative files for the
> server.  The actual RCS files that make up the CVS history for Octave
> are in a separate tree.  I think that is all you need.  Then you can
> insert those files in your own cvs archive (with its own CVSROOT
> directory, which determine how the archive is managed).  I've added
> the octave-cvs files to the rsync server on www.octave.org.  You can
> get all the files and keep them up to date with
>
>   rsync -av www.octave.org::/octave-cvs/ ./octave-cvs/

Thanks, John.  I downloaded these.

Stéfan

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Andy Adler
In reply to this post by John W. Eaton-6
In order to allow testing of SVN for octave, Stefan van der Walt
and I have set up a server with a svn octave repository.

I sample usage is:
 $ svn ls svn+ssh://[hidden email]/octave/
  branches/
  tags/
  trunk/

At this point, I would like to know how this should be used.

One option would be for developers who wish to use this
machine to send me their ssh public key. They will then
have read/write access.

Should I do this?
--
Andy Adler <[hidden email]> 1(613)562-5800x6218

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Paul Kienzle

On Oct 17, 2005, at 9:54 PM, Andy Adler wrote:

> In order to allow testing of SVN for octave, Stefan van der Walt
> and I have set up a server with a svn octave repository.
>
> I sample usage is:
>  $ svn ls svn+ssh://[hidden email]/octave/
>   branches/
>   tags/
>   trunk/
>
> At this point, I would like to know how this should be used.
>
> One option would be for developers who wish to use this
> machine to send me their ssh public key. They will then
> have read/write access.
>
> Should I do this?

I notice that you can have different access controls for different
parts of the repository.

        http://svnbook.red-bean.com/en/1.0/ch06s04.html#svn-ch-6-sect-4.4.2

Do we want to gather the various octave related projects under one
roof, such as octave-forge, octaviz, etc.?

The main reason I can see for doing so is that it will make it easier
for John to move functions and packages in and out of the core without
losing the change history.

This will make more work for the server administrator though.

- Paul

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Stéfan van der Walt
On Mon, Oct 17, 2005 at 10:35:03PM -0400, Paul Kienzle wrote:
> The main reason I can see for doing so is that it will make it easier
> for John to move functions and packages in and out of the core without
> losing the change history.
>
> This will make more work for the server administrator though.

I would enjoy having all of Octave on one SVN server (mostly because I
would much prefer SVN on both Octave and Octave Forge).

Administering subversion is really not difficult or time-consuming, as
I saw again while setting up the example server.

Send Andy your public keys (ssh-keygen, without passwords) in order to
receive access to the server.  Please try it out and tell us about
anything that might hinder the adoption of this improved revision
control system.

Regards
Stéfan

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

Andy Adler
In reply to this post by Stéfan van der Walt
On Tue, 18 Oct 2005, David Bateman wrote:

> Andy Adler wrote:
>
> >In order to allow testing of SVN for octave, Stefan van der Walt
> >and I have set up a server with a svn octave repository.
> >
> >I sample usage is:
> > $ svn ls svn+ssh://[hidden email]/octave/
> >  branches/
> >  tags/
> >  trunk/
> >
> >At this point, I would like to know how this should be used.

> Could we have an SSL connection as well on a standard port. The reason
> is that I'm behind a firewall at work and can't ssh out, and can't use
> https to anything except standard ports.

To do this, I need to remove apache-1.3 and install 2.0. However,
this machine supports an application through 1.3, and it'll take
time to debug the switchover.

If enough request it, I'll can probably find another machine
so support this, or move the application to apache 2.

> In any case the the original octave CVS will get out of sync relative to
> this SVN, so unless the point is to fork octave this svn server should
> just be considered a test server, in particular to show John the
> advantages of SVN, and if he is sold on it to replace the original CVS
> server with  SVN. So the use will be limited in time and quantity to
> just a few people testing it out..

Yes. The goal is to allow people to play with SVN for octave
to see if they like it. This install is not part of octave
development per se.

--
Andy Adler <[hidden email]> 1(613)562-5800x6218



Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

David Bateman-3
In reply to this post by Andy Adler
Andy Adler wrote:

>In order to allow testing of SVN for octave, Stefan van der Walt
>and I have set up a server with a svn octave repository.
>
>I sample usage is:
> $ svn ls svn+ssh://[hidden email]/octave/
>  branches/
>  tags/
>  trunk/
>
>At this point, I would like to know how this should be used.
>
>One option would be for developers who wish to use this
>machine to send me their ssh public key. They will then
>have read/write access.
>  
>
I tried out the svn server, with a checkout, add, commit to see the
complexity of the change from cvs... Basically it is nearly identical
for this case with the same syntax except for the initial checkout url
being slightly different. I'd like to check the complexity of doing a
branch/merge, but it basically seems pretty seems pretty easy to use svn
for a cvs user. What other tools are available for use with svn (eg a
replacement for tkcvs) to visualize the branching and versioning of
files in the repository?

John, have you had a chance to try this out?

Regards
David

--
David Bateman                                [hidden email]
Motorola Labs - Paris                        +33 1 69 35 48 04 (Ph)
Parc Les Algorithmes, Commune de St Aubin    +33 1 69 35 77 01 (Fax)
91193 Gif-Sur-Yvette FRANCE

The information contained in this communication has been classified as:

[x] General Business Information
[ ] Motorola Internal Use Only
[ ] Motorola Confidential Proprietary

Reply | Threaded
Open this post in threaded view
|

Re: source control management for Octave

John W. Eaton-6
On 19-Oct-2005, David Bateman wrote:

| John, have you had a chance to try this out?

No, and I may not, at least for a few weeks.

Can someone please try to explain what the advantages will be for me
if we make the switch?

jwe

12