[Amforth] SVN to GIT [Re: draft: roadmap for AmForth]

2020-11-03 Thread fraber

Hi!


> Point 5 is huge and needs to be broken into smaller steps.
>
> I would appreciate any response, and if you could
> include, which target you are using, all the better.


We (http://www.project-open.com/) are in the process of
moving from CVS to GIT for the next ]project-open[ V5.1
release. The process is the same for SVN, the tool is actually
called svn2git...

We decided to host our repos on a private GitLab instance
because:

- GitLab allows us to setup permissions for "packages"
  (see below). That's important for us, because customer
  specific packages contain code that is not public.

- GitLab is open source.

- The GitLab founders are credible with their open source
  philosophy and the business model seems viable.


We also publish on GitHub for PR reasons. It's free...

Previously, our code was kept in a CVS repository.
We installed GitLab in a VM and moved the CVS
repository to the same CentOS VM  that is running
GitLab. Every night we now run "cvs2git" which is
originally from http://cvs2svn.tigris.org/cvs2svn.html
but now available for example here:
https://github.com/mhagger/cvs2svn

We have configured cvs2git to push the CVS
changes both to GitHub and our private GitLab repos.

This has worked without problems for quite some time,
many repositories (our product consists of ~200
"packages" which are represented by separate repos)
and very large repositories (we've got ~4 million LoC
in total). Our next ]po[ V5.1 release will be based on GIT.

We like that we can work with GIT on the "customer"
side, while still using CVS as the upstream/master
repository for some time. CVS is still referenced by
many integration links, so we can't just break this.

I believe the AmForth community should take several
decisions:

- Gradual or "big bang" migration?
  Should SVN and GIT run in parallel for some time, or is
  it OK to have a single big bang migration? Big bang is
  a lot easier...

- Do you want to completely ignore GitHub?
  GitHub is the go-to place for open source software.
  Google does heavy indexing there. If you want AmForth
  to reach a large community, then you have to  publish
  there. However, it doesn't need to the the primary repo...


> convert the releases/N.M directories

This seems to be quite difficult to me. Maybe just keep
these directories during the initial migration and delete
them in the following releases?


Keep up the good work!



Cheers!
Frank


On 2/11/20 20:36, Erich Wälde wrote:

Dear AmForthers,

some time ago (2020-08-02), Mark Roth suggested to come up with a
"road map". Now while mapping unknown territory is a challenge of
sorts, it might be not that difficult in this case.

This my personal point of view, it might change anytime without prior
notice.

1. Accumulate all commits since Jan 2019 and call it *release 6.9*
 That I have done. :)

2. Document the exact steps that were needed to create "a release".
 Well yes, I have these lines, but not in shape and maybe not
 complete. It should be added to the repository nonetheless.

3. Add testing scripts --- I have a set of scripts for that, but I
 have not run this stuff yet. However, in my opinion adding a
 working test suite is far more important at the moment, than
 anything else.

 This includes preparing some hardware with 4 relevant target boards
 in order to simplify the process.

4. Call this *release 7.0*

5. Convert and Move Repository

 Currently it looks like I would have to convert the svn repository
 to a git repository with a tool like svn2git. This is a process I
 would like to avoid, so if someone knows how to convert the
 repository "server side", or even how to export the complete svn
 repository on sourceforge into a big file ... all hints are kindly
 appreciated.

 I would then move to sourcehut.org. Why?

 - I do have an account there already
 - sourcehut offers accounts for a very reasonable amount of money.
 - sourchut works without javascript! Can you believe this? No? Try it.
   For me this is a major step in the correct direction. [1]
 - I would order and pay for a new project account
 - I would like to add at least two collaborators with full access
   from day one. Volunteers?

 This is going to include more things than just converting the
 repository:

 - possibly convert the releases/N.M directories into branches
 - create a new space for the webpage
 - automate generation of the webpage, serverside if possible
 - document how to locally generate the documentation --- well, the
   stuff you have to install before "cd doc; make all".
 - look into the use of javascript and possible ways to reduce that,
   should it be desirable
 - create an archive for (some of) the old tarballs
 - archive and transfer the mailing list content
 - create a new mailing list
 - automate the generation of a release
 - document the release process
 - sta

Re: [Amforth] SVN to GIT [Re: draft: roadmap for AmForth]

2020-11-03 Thread dieter
Hi all,
I think I introduced myself already, but that was years ago.
I first played around with forth in the 80s, but never had a chance to use it 
properly for a real project.
Maybe this changes now, because due to corona I am working part-time now..
On the svn2git topic:
I gave it a try and started a svn2git conversion on my machine with the command:
svn2git https://svn.code.sf.net/p/amforth/code --branches releases
This takes about 10 minutes, depending on host power and network connection.
This converts the trunk to themaster branch and converts all the releases tree 
to branches.
The result looks quite well to me.
I have uploaded it to a private server, you can have a look at:
fo...@hotzenplotz.schoen.or.at:amforth.git
The password is the name of this project in uppercase, a dot, and 0x7d6 in 
decimal.
If you like, I could also upload it to gitlab or github.
Kind regards,
Dieter
Am Di., Nov. 3, 2020 10:34 schrieb fra...@fraber.de:
Hi!

Point 5 is huge and needs to be broken into smaller steps.

I would appreciate any response, and if you could
include, which target you are using, all the better.

We (http://www.project-open.com/ (http://www.project-open.com/)) are in the 
process of
moving from CVS to GIT for the next ]project-open[ V5.1
release. The process is the same for SVN, the tool is actually
called svn2git...

We decided to host our repos on a private GitLab instance
because:

- GitLab allows us to setup permissions for "packages"
  (see below). That's important for us, because customer
  specific packages contain code that is not public.

- GitLab is open source.

- The GitLab founders are credible with their open source
  philosophy and the business model seems viable.

We also publish on GitHub for PR reasons. It's free...

Previously, our code was kept in a CVS repository.
We installed GitLab in a VM and moved the CVS
repository to the same CentOS VM  that is running
GitLab. Every night we now run "cvs2git" which is
originally from http://cvs2svn.tigris.org/cvs2svn.html 
(http://cvs2svn.tigris.org/cvs2svn.html)
but now available for example here:
https://github.com/mhagger/cvs2svn (https://github.com/mhagger/cvs2svn)

We have configured cvs2git to push the CVS
changes both to GitHub and our private GitLab repos.

This has worked without problems for quite some time,
many repositories (our product consists of ~200
"packages" which are represented by separate repos)
and very large repositories (we've got ~4 million LoC
in total). Our next ]po[ V5.1 release will be based on GIT.

We like that we can work with GIT on the "customer"
side, while still using CVS as the upstream/master
repository for some time. CVS is still referenced by
many integration links, so we can't just break this.

I believe the AmForth community should take several
decisions:

- Gradual or "big bang" migration?
  Should SVN and GIT run in parallel for some time, or is
  it OK to have a single big bang migration? Big bang is
  a lot easier...

- Do you want to completely ignore GitHub?
  GitHub is the go-to place for open source software.
  Google does heavy indexing there. If you want AmForth
  to reach a large community, then you have to  publish
  there. However, it doesn't need to the the primary repo...

convert the releases/N.M directories

This seems to be quite difficult to me. Maybe just keep
these directories during the initial migration and delete
them in the following releases?

Keep up the good work!

Cheers!
Frank

On 2/11/20 20:36, Erich Wälde wrote:
Dear AmForthers,

some time ago (2020-08-02), Mark Roth suggested to come up with a
"road map". Now while mapping unknown territory is a challenge of
sorts, it might be not that difficult in this case.

This my personal point of view, it might change anytime without prior
notice.

1. Accumulate all commits since Jan 2019 and call it *release 6.9*
That I have done. :)

2. Document the exact steps that were needed to create "a release".
Well yes, I have these lines, but not in shape and maybe not
complete. It should be added to the repository nonetheless.

3. Add testing scripts --- I have a set of scripts for that, but I
have not run this stuff yet. However, in my opinion adding a
working test suite is far more important at the moment, than
anything else.

This includes preparing some hardware with 4 relevant target boards
in order to simplify the process.

4. Call this *release 7.0*

5. Convert and Move Repository

Currently it looks like I would have to convert the svn repository
to a git repository with a tool like svn2git. This is a process I
would like to avoid, so if someone knows how to convert the
repository "server side", or even how to export the complete svn
repository on sourceforge into a big file ... all hints are kindly
appreciated.

I would then move to sourcehut.org. Why?

- I do have an account there already
- sourcehut offers accounts for a very reasonable amount of money.
- sourchut works without javascript! Can you believe this? No? Try it.

Re: [Amforth] SVN to GIT [Re: draft: roadmap for AmForth]

2020-11-03 Thread Ian Jefferson
Some good points here:

> On Nov 3, 2020, at 4:33 AM, fra...@fraber.de wrote:
> 
> - Gradual or "big bang" migration?
>   Should SVN and GIT run in parallel for some time, or is
>   it OK to have a single big bang migration? Big bang is
>   a lot easier…
> 

Big Bang.  We are too small and under staffed (current Army of Erich!)  to 
maintain stuff in parallel.  Given the opportunity we can all grab working 
copies before the transition.  A good thought here Frank.

> - Do you want to completely ignore GitHub?
>   GitHub is the go-to place for open source software.
>   Google does heavy indexing there. If you want AmForth
>   to reach a large community, then you have to  publish
>   there. However, it doesn't need to the the primary repo...

Another wise comment Frank.  There is something eventually even I could 
maintain for the community!  Keeping things as open to the main stream 
opensource crowd is a good thought even if the day to day is managed elsewhere 
and when.

Ian
___
Amforth-devel mailing list for http://amforth.sf.net/
Amforth-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/amforth-devel