Giter Club home page Giter Club logo

cvs2svn's People

Contributors

blair avatar clach04 avatar cmpilato avatar mhagger avatar ossilator avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cvs2svn's Issues

cvs2git malforms binary (-kb) files

It's doing the thing where anywhere theres text e.g. $Name$ it will convert that to something like $Name: $. This will make the binary file unusable/report corrupted when using it for compiling e.t.c.

Is there any workaround?

Importing autors names and contrubution maps

It is possible to import autor names and contribution maps from HDD or CD Backup?

The project name here is github.com/Mx-Publisher/mxpcms

The old project to rsync was pserver:[email protected]:/cvsroot/mxbb but they did not had users at github so now only works from a CD backup.

The new project name would be there git.code.sf.net/p/mxpcms/git

10x

python3 version

The next Debian will release without Python, only with py3k.

Freeze should be around beginning of January 2021, so we’ll need a stable release not requiring Python any more this year.

Cc: @gcsideal

svn2git fails "ERROR: No RCS files found under..."

using the latest release 2.4.0
as described on http://stackoverflow.com/questions/881158/is-there-a-migration-tool-from-cvs-to-git

$ cvs -d:pserver:[email protected]:/cvsroot/pearpc login 
$ cvs -z3 -d:pserver:[email protected]:/cvsroot/pearpc co -P pearpc
# ... downloads stuff...
$ cp /opt/cvs2svn/share/cvs2svn/cvs2git-example.options .
# ... edit run_options.set_project r'dirname' to point to pearpc
$ cvs2git --options=cvs2git-example.options --fallback-encoding utf-8
ERROR: the path 'pearpc' is not a CVS repository, nor a path within a CVS repository.  A CVS repository contains a CVSROOT directory within its root directory.
# as decribed in the stackoverflow answer:
$ mkdir pearpc/CVSROOT
$ cvs2git --options=cvs2git-example.options --fallback-encoding utf-8
ERROR: No RCS files found under 'pearpc'!
Are you absolutely certain you are pointing cvs2svn
at a CVS repository?

There are no tags or releases in this repo

There are no git tags or GitHub releases in this repo. I would expect to see a tag for each version mentioned in the CHANGES file and an attached GitHub release offering the original tarball for that version (at least for the most recent version).

CVS2GIT ERROR

Hi I am a newbie to GIT. I have a CVS repository on m local computer and i am trying to migrate it to GIT.

I am using the following command.

C:\Users\testuser\Downloads\CVS2SVN\dist\cvs2svn-2.4.0> python cvs2git
--blobfile=C:\Demos\cvsmigration\git-shoping-blob.dat
--dumpfile=C:\Demos\cvsmigration\git-shoping-dump.dat
--username=cvs2git
C:\Demos\cvsrepo

Above command exit with the following error.

Filtering out excluded symbols and summarizing items...
ERROR: The command 'cvs -Q -f -d :local:C:\Demos\cvsrepo co -r1.1 -p -kb CVSRO
OT/checkoutlist' failed with exit status=0
and the following output:
cvs checkout: cwd=C:\Users\testuser\Downloads\CVS2SVN\dist\cvs2svn-2.4.0 ,curren
t=C:\Users\testuser\Downloads\CVS2SVN\dist\cvs2svn-2.4.0

Any help please ..!!

Error while doing cvs2git migration

Hi mhagger

I am running into an issue with cvs2git migration. Following are the steps that I am following:

I have a Local snapshot of the repository that has CVSROOT and the projects
Then I ran the following command to get the .dat file generated but the files are not generating and I am getting the following error at the Pass 4
Command
python cvs2git.bat --blobfile=C:\files\git-blob.dat --dumpfile=C:\files\git-dump.dat --username= --encoding=utf8

ERROR: Filtering out excluded symbols and summarizing items... ERROR: The command 'cvs -Q -R -f -d :local:C:\ABC\Work\Migration\FH\Fuzon co -r1.1 -p -kb CVSROOT/checkoutlist' failed with exit status=1 and the following output: cvs checkout: connect to 127.0.0.1(127.0.0.1:2402):2402 failed: No connection could be made because the target machine actively refused it. cvs [checkout aborted]: Couldn't connect to lock server

I tried to connect to the actual cvs server also and then run the command but it still failed. I am using Windows 7 box.

Anyway I can overcome this issue.

cvs2svn: Got Malformed RCS delta error while reproducing newer revison file from older revision file.

(This was reported by @jun66j5 on twitter, in Japanese language, with larger example.)

It seems cvs2svn cannot handle some RCS files which contains "a" command with in complete (not end with '\n') line before the last line in the target file.

Here is an example file irregular.txt,v:

head    1.5;
access;
symbols;
locks; strict;
comment @# @;


1.5
date    2021.11.26.04.16.45;    author futatuki;        state Exp;
branches;
next    1.4;

1.4
date    2021.11.26.04.14.23;    author futatuki;        state Exp;
branches;
next    1.3;

1.3
date    2021.11.26.03.46.06;    author futatuki;        state Exp;
branches;
next    1.2;

1.2
date    2021.11.26.03.41.39;    author futatuki;        state Exp;
branches;
next    1.1;

1.1
date    2021.11.26.03.34.28;    author futatuki;        state Exp;
branches;
next    ;


desc
@create a new file irregular.txt
@


1.5
log
@r1.5:
@
text
@aaa
bbb
ccc
hhh@


1.4
log
@r1.4:
@
text
@d4 1
a4 1
ggg@


1.3
log
@r1.3: s/eee/fff/
@
text
@d3 1
a3 1
fff@


1.2
log
@r1.2: s/ddd/eee/
@
text
@d3 1
a3 1
eee@

1.1
log
@r1.1
@
text
@d3 1
a3 1
ddd@

For each revision diff text, the last 'a' command adds incomplete line. Especially in r1.3 from r1.4, this diff text replaces an existing comlete line into an incomplete line, and as a result, this line connect the next existing line (although I don't believe CVS/RCS can produce such a curious diff, but there exists other than this in a real use case, and CVS/RCS can handle it).

With a sample CVS repository contains this irregular.txt,v only (except RCSROOT), cvs2svn produces an error:

$  cvs2svn -s irregular-rcs-test-broken.svn /home/cvs/irregular-rcs-test
Writing temporary files to '/tmp/cvs2svn-Tlxzju'
Be sure to use --tmpdir='/tmp/cvs2svn-Tlxzju' if you need to resume this conversion.
----- pass 1 (CollectRevsPass) -----
Examining all CVS ',v' files...
/home/cvs/irregular-rcs-test/irregular.txt,v
/home/cvs/irregular-rcs-test/CVSROOT/checkoutlist,v

  ...

Starting Subversion r7 / 7
ERROR: Malformed RCS delta in /home/cvs/irregular-rcs-test/irregular.txt,v, revision 1.5: Deletion beyond file end

With the incomplete Subversion repository irregular-rcs-test-broken.svn, r1.1 to r1.4 revision files of irregular.txt exactly equal to ones of original CVS repo's.

Although I also think those RCS delta was malformed, I think it is better to continue to build new revisions for Subversion repo, because newer revision files before mailformed delta are correct files.

I'll submit a PR for the issue.

cvs2git: non-deterministic conversion (force push) if multi-branch commits in CVS

Originally reported in Debian.

Package: cvs2svn
Version: 2.4.0-4
Severity: important

I regularily convert some CVS repositories of mine to push-only
git mirrors. Today I noticed a problem for the second time: a
push was rejected because it needs a force.

I’m attaching:

• the diff between “git log” output of the previous conversion
and the next one

• the current ,v file of where I think the problem is

• a previous ,v file which I think matches the before state

Console output of pushing to my local mirror:

To /git/jupp

  • 901e728...a5dddf3 joe-2_8-msdos -> joe-2_8-msdos (forced update)
  • 0d0c308...77c5cb7 jupprc-for-joe-3_7 -> jupprc-for-joe-3_7 (forced update)
    87ad7f7..ff21092 master -> master
  • 901e728...1486d94 joe-2_8jupp3 -> joe-2_8jupp3 (forced update)
  • [new branch] jupprc-for-joe-4_4 -> jupprc-for-joe-4_4

The remote mirror then rejected it. I did commit the jupprc file
in several branches simultaneously, but, of course, the “second”
part of the timestamp differs (this happens when your CVS server
is a Pentium 233 MMX ☺).

-- System Information:
Debian Release: buster/sid
APT prefers unreleased
APT policy: (500, 'unreleased'), (500, 'buildd-unstable'), (500, 'unstable')
Architecture: x32 (x86_64)
Foreign Architectures: i386, amd64

Kernel: Linux 4.11.0-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=C, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=C (charmap=UTF-8)
Shell: /bin/sh linked to /bin/lksh
Init: sysvinit (via /sbin/init)

Versions of packages cvs2svn depends on:
ii python 2.7.13-2
ii rcs 5.9.4-3
ii subversion 1.9.6-1+b1

Versions of packages cvs2svn recommends:
ii mime-support 3.60

Versions of packages cvs2svn suggests:
pn bzr
ii cvs 2:1.12.13+real-23
ii git [git-core] 1:2.14.0-1

-- no debconf information

#871734.zip

Is run-test.py itself broken?

When I ran 'python2.7 ./run-test.py' I always got:

W: Couldn't find node 'transaction...' in expected output tree
W:  * Node name:   transaction...
    Path:       __SVN_ROOT_NODE/transaction...
    Contents:   None
    Properties: {}
    Attributes: {'verb': 'Committing'}
    Children:  None (node is probably a file)

W: ERROR:  output of import command is unexpected.
W: EXPECTED OUTPUT TREE:
W: ROOT
  +-- svn-test-work
        +-- local_tmp
              +-- greekfiles
                    |-- A
                    |     |-- B
                    |     |     |-- E
                    |     |     |     |-- alpha
                    |     |     |     +-- beta
                    |     |     |-- F
                    |     |     +-- lambda
                    |     |-- C
                    |     |-- D
                    |     |     |-- G
                    |     |     |     |-- pi
                    |     |     |     |-- rho
                    |     |     |     +-- tau
                    |     |     |-- H
                    |     |     |     |-- chi
                    |     |     |     |-- omega
                    |     |     |     +-- psi
                    |     |     +-- gamma
                    |     +-- mu
                    +-- iota

W: ACTUAL OUTPUT TREE:
W: ROOT
  |-- svn-test-work
  |     +-- local_tmp
  |           +-- greekfiles
  |                 |-- A
  |                 |     |-- B
  |                 |     |     |-- E
  |                 |     |     |     |-- alpha
  |                 |     |     |     +-- beta
  |                 |     |     |-- F
  |                 |     |     +-- lambda
  |                 |     |-- C
  |                 |     |-- D
  |                 |     |     |-- G
  |                 |     |     |     |-- pi
  |                 |     |     |     |-- rho
  |                 |     |     |     +-- tau
  |                 |     |     |-- H
  |                 |     |     |     |-- chi
  |                 |     |     |     |-- omega
  |                 |     |     |     +-- psi
  |                 |     |     +-- gamma
  |                 |     +-- mu
  |                 +-- iota
  +-- transaction...

on FreeBSD 13 with Subversion 1.14.1, CentOS 7 with Subversion 1.14.1 and Scientific Linux with Subversion 1.9.7.

Even after I modified run-test.py with patch below, the behaiviour is not changed.

diff --git a/run-tests.py b/run-tests.py
index 7eaee08..cf9536f 100755
--- a/run-tests.py
+++ b/run-tests.py
@@ -935,6 +935,7 @@ class Cvs2SvnPropertiesTestCase(Cvs2SvnTestCase):
 @Cvs2SvnTestFunction
 def show_usage():
   "cvs2svn with no arguments shows usage"
+  raise Failure('Dummy failure.')
   out = run_script(cvs2svn, None)
   if (len(out) > 2 and out[0].find('ERROR:') == 0
       and out[1].find('DBM module')):
@@ -4310,7 +4311,8 @@ if __name__ == '__main__':
   svntest.main.svnadmin_binary    = svnadmin_binary
   svntest.main.svnversion_binary  = svnversion_binary
 
-  svntest.main.run_tests(test_list)
+  #svntest.main.run_tests(test_list)
+  svntest.main.run_tests([None, show_usage,])
   # NOTREACHED
 
 

Are there something wrong in my usage of run-test.py? Or is run-test.py itself broken now?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.