[Date Prev][Date Next][Thread Prev][][Date Index][Thread Index]

Re: Moving from CVS to git

On 2018-11-07 11:21, Vladimir Sedach wrote:
> ...

This has been on my mind also, and I've been playing with several ways
of faithfully reproducing a complete history of all commits to CVS.
Honestly, I'm not sure that a 100% faithful copy is necessary for the
entire 23 years, and it seems that what I have (privately, so far) is
good, but I haven't figured out a test to *prove* 100% faithfulness.

> There is a link to someone's GitHub mirror
> (https://github.com/ecbrown/emacs-w3m) of w3m, which has been
> removed, on http://emacs-w3m.namazu.org/

My bad. That repository was more than eight months out of sync, so I
submitted a github issue, and the maintainer decided to discontinue his
independent efforts in favor of another github repository, at
'emacsorphanage', which does seem to keep itself up-to-date, and which
is the source for the MELPA version of emacs-w3m.

> Boruch Baum has a development repository of emacs-w3m that has not
> imported the CVS history:
> https://github.com/Boruch-Baum/emacs-w3m-development

Again, my bad. When I created the repository I wasn't thinking ahead or
taking a 'big picture' outlook to impose a structural change upon the
project. My intent was just to share stuff that I was experimenting

> Would it be possible to switch the official emacs-w3m repository to
> git?

Switching to git would be great for soooo many reasons; it is just
so much easier to work with and get things done quickly. I'm in favor,
but it's a decision that the core developers need to make.

> I can work on importing the CVS history into a git repository.

I think I've already prepared one (ie. a historically accurate git
repository), but I'm not certain it's 100% accurate. If the project
decision-makers decide to adopt the suggestion, I'll be happy to share
my work and my workflow in order to collaborate on something everyone
can agree on as a starting point.

An alternative would be to maintain repositories under both revision
control systems, at least for a period. The CVS repository could be
designated the primary, to maintain continuity and because it seems
trivial for git to sync changes directly from a cvs repository (I did
some basic tests).

One issue to consider would be how wedded the project wants to be to its
current system of sequentially-numbered commits. One can 'tag' commits
in git to emulate that feature, possibly using a 'git hook' (see 'git
help hooks').

There may be other considerations...

CA45 09B5 5351 7C11 A9D1  7286 0036 9E45 1595 8BC0