Open Design and Integration Environment

Hex Artifact Content
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2018 Conference, Houston/TX, US, Oct 15-19
Send your abstracts to tclconference@googlegroups.com or submit via the online form
by Aug 20.

Artifact 798120516f681aa75d6b70ec5929cf1da54c98db:

Wiki page [Converting CVS to Fossil] by hypnotoad 2013-12-08 11:51:23.
0000: 44 20 32 30 31 33 2d 31 32 2d 30 38 54 31 31 3a  D 2013-12-08T11:
0010: 35 31 3a 32 33 2e 35 35 33 0a 4c 20 43 6f 6e 76  51:23.553.L Conv
0020: 65 72 74 69 6e 67 5c 73 43 56 53 5c 73 74 6f 5c  erting\sCVS\sto\
0030: 73 46 6f 73 73 69 6c 0a 50 20 61 36 31 36 61 31  sFossil.P a616a1
0040: 35 34 35 34 39 31 61 38 34 31 39 31 63 61 37 39  545491a84191ca79
0050: 64 65 32 33 30 35 34 61 63 30 31 63 61 31 64 32  de23054ac01ca1d2
0060: 65 33 0a 55 20 68 79 70 6e 6f 74 6f 61 64 0a 57  e3.U hypnotoad.W
0070: 20 31 37 33 38 0a 54 68 65 20 70 72 6f 63 65 64   1738.The proced
0080: 75 72 65 20 66 6f 72 20 6d 69 67 72 61 74 69 6e  ure for migratin
0090: 67 20 66 72 6f 6d 20 43 56 53 20 74 6f 20 46 6f  g from CVS to Fo
00a0: 73 73 69 6c 20 72 65 71 75 69 72 65 73 20 61 6e  ssil requires an
00b0: 20 69 6e 74 65 72 6d 65 64 69 61 72 79 20 73 74   intermediary st
00c0: 65 70 20 74 68 72 6f 75 67 68 20 47 49 54 2e 20  ep through GIT. 
00d0: 54 68 65 20 70 72 6f 63 65 73 73 20 75 73 65 64  The process used
00e0: 20 62 79 20 4f 44 49 45 20 77 61 73 20 6f 72 69   by ODIE was ori
00f0: 67 69 6e 61 6c 6c 79 20 64 65 73 63 72 69 62 65  ginally describe
0100: 64 20 62 79 20 56 69 6e 63 65 20 57 65 73 74 20  d by Vince West 
0110: 3c 61 20 68 72 65 66 3d 22 68 74 74 70 3a 2f 2f  <a href="http://
0120: 76 69 6e 63 65 77 2e 6e 65 74 2f 63 6f 6e 74 65  vincew.net/conte
0130: 6e 74 2f 69 6d 70 6f 72 74 2d 63 76 73 2d 72 65  nt/import-cvs-re
0140: 70 6f 73 69 74 6f 72 79 2d 66 6f 73 73 69 6c 22  pository-fossil"
0150: 3e 48 65 72 65 3c 2f 61 3e 2e 20 0d 0a 3c 70 3e  >Here</a>. ..<p>
0160: 0d 0a 54 68 65 20 73 63 72 69 70 74 20 75 73 65  ..The script use
0170: 64 20 69 73 20 61 73 20 66 6f 6c 6c 6f 77 73 3a  d is as follows:
0180: 0d 0a 3c 76 65 72 62 61 74 69 6d 3e 0d 0a 23 21  ..<verbatim>..#!
0190: 2f 62 69 6e 2f 62 61 73 68 0d 0a 0d 0a 64 69 65  /bin/bash....die
01a0: 28 29 7b 0d 0a 20 20 20 20 20 20 20 20 65 63 68  (){..        ech
01b0: 6f 20 24 31 0d 0a 20 20 20 20 20 20 20 20 65 78  o $1..        ex
01c0: 69 74 20 31 0d 0a 7d 0d 0a 0d 0a 23 20 70 61 72  it 1..}....# par
01d0: 61 6d 65 74 65 72 73 3a 0d 0a 23 20 31 20 2d 20  ameters:..# 1 - 
01e0: 75 73 65 72 6e 61 6d 65 20 6f 66 20 61 64 6d 69  username of admi
01f0: 6e 0d 0a 23 20 32 20 2d 20 63 76 73 20 72 65 70  n..# 2 - cvs rep
0200: 6f 73 69 74 6f 72 79 20 74 6f 20 63 6f 6e 76 65  ository to conve
0210: 72 74 0d 0a 23 20 33 20 2d 20 6d 6f 64 75 6c 65  rt..# 3 - module
0220: 20 69 6e 20 63 76 73 20 74 6f 20 63 6f 6e 76 65   in cvs to conve
0230: 72 74 0d 0a 23 20 34 20 2d 20 6e 61 6d 65 20 6f  rt..# 4 - name o
0240: 66 20 66 6f 73 73 69 6c 20 72 65 70 6f 20 28 6e  f fossil repo (n
0250: 6f 20 65 78 74 65 6e 73 69 6f 6e 29 0d 0a 23 20  o extension)..# 
0260: 6e 6f 74 65 3a 20 74 68 65 20 72 65 70 6f 73 69  note: the reposi
0270: 74 6f 72 79 20 77 69 6c 6c 20 62 65 20 63 72 65  tory will be cre
0280: 61 74 65 64 20 72 69 67 68 74 20 68 65 72 65 21  ated right here!
0290: 0d 0a 0d 0a 69 66 20 5b 20 22 24 34 22 20 3d 3d  ....if [ "$4" ==
02a0: 20 22 22 20 5d 0d 0a 74 68 65 6e 0d 0a 20 20 20   "" ]..then..   
02b0: 20 20 20 20 20 65 63 68 6f 20 22 53 79 6e 74 61       echo "Synta
02c0: 78 3a 22 0d 0a 20 20 20 20 20 20 20 20 65 63 68  x:"..        ech
02d0: 6f 20 22 20 63 76 73 32 66 6f 73 73 69 6c 20 75  o " cvs2fossil u
02e0: 73 65 72 6e 61 6d 65 20 20 63 76 73 72 6f 6f 74  sername  cvsroot
02f0: 20 6d 6f 64 75 6c 65 20 66 6f 73 73 69 6c 2d 72   module fossil-r
0300: 65 70 6f 2d 6e 61 6d 65 22 0d 0a 20 20 20 20 20  epo-name"..     
0310: 20 20 20 64 69 65 20 20 22 50 6c 65 61 73 65 20     die  "Please 
0320: 6d 61 6b 65 20 73 75 72 65 20 79 6f 75 20 68 61  make sure you ha
0330: 76 65 20 61 6c 6c 20 74 68 72 65 65 20 70 61 72  ve all three par
0340: 61 6d 65 74 65 72 73 20 73 65 74 21 22 0d 0a 66  ameters set!"..f
0350: 69 0d 0a 0d 0a 65 63 68 6f 20 22 49 6d 70 6f 72  i....echo "Impor
0360: 74 69 6e 67 20 66 72 6f 6d 20 43 56 53 20 74 6f  ting from CVS to
0370: 20 67 69 74 2e 20 20 54 68 69 73 20 77 69 6c 6c   git.  This will
0380: 20 74 61 6b 65 20 73 6f 6d 65 20 74 69 6d 65 2c   take some time,
0390: 20 62 65 20 70 61 74 69 65 6e 74 21 22 0d 0a 6d   be patient!"..m
03a0: 6b 64 69 72 20 24 34 0d 0a 63 64 20 24 34 0d 0a  kdir $4..cd $4..
03b0: 63 76 73 20 2d 64 20 24 32 20 6c 6f 67 69 6e 0d  cvs -d $2 login.
03c0: 0a 67 69 74 20 63 76 73 69 6d 70 6f 72 74 20 2d  .git cvsimport -
03d0: 76 20 2d 64 20 24 32 20 24 33 20 7c 7c 20 64 69  v -d $2 $3 || di
03e0: 65 20 22 55 6e 61 62 6c 65 20 74 6f 20 69 6d 70  e "Unable to imp
03f0: 6f 72 74 20 74 6f 20 67 69 74 22 0d 0a 0d 0a 65  ort to git"....e
0400: 63 68 6f 20 22 49 6d 70 6f 72 74 69 6e 67 20 66  cho "Importing f
0410: 72 6f 6d 20 67 69 74 20 74 6f 20 66 6f 73 73 69  rom git to fossi
0420: 6c 2e 20 20 54 68 69 73 20 77 69 6c 6c 20 61 6c  l.  This will al
0430: 73 6f 20 74 61 6b 65 20 73 6f 6d 65 20 74 69 6d  so take some tim
0440: 65 2c 20 73 61 64 6c 79 22 0d 0a 0d 0a 28 0d 0a  e, sadly"....(..
0450: 67 69 74 20 66 61 73 74 2d 65 78 70 6f 72 74 20  git fast-export 
0460: 2d 2d 66 75 6c 6c 2d 74 72 65 65 20 2d 2d 61 6c  --full-tree --al
0470: 6c 20 7c 20 66 6f 73 73 69 6c 20 69 6d 70 6f 72  l | fossil impor
0480: 74 20 2d 2d 67 69 74 20 2e 2e 2f 24 34 2e 66 6f  t --git ../$4.fo
0490: 73 73 69 6c 20 7c 7c 20 64 69 65 20 22 55 6e 61  ssil || die "Una
04a0: 62 6c 65 20 74 6f 20 69 6d 70 6f 72 74 20 69 6e  ble to import in
04b0: 74 6f 20 66 6f 73 73 69 6c 22 0d 0a 29 0d 0a 0d  to fossil"..)...
04c0: 0a 65 63 68 6f 20 22 44 6f 6e 65 21 2e 22 0d 0a  .echo "Done!."..
04d0: 66 6f 73 73 69 6c 20 75 73 65 72 20 6e 65 77 20  fossil user new 
04e0: 24 31 20 2d 52 20 2e 2e 2f 24 34 2e 66 6f 73 73  $1 -R ../$4.foss
04f0: 69 6c 0d 0a 66 6f 73 73 69 6c 20 75 73 65 72 20  il..fossil user 
0500: 63 61 70 61 62 69 6c 69 74 69 65 73 20 24 31 20  capabilities $1 
0510: 27 76 27 20 2d 52 20 2e 2e 2f 24 34 2e 66 6f 73  'v' -R ../$4.fos
0520: 73 69 6c 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e  sil..</verbatim>
0530: 0d 0a 3c 70 3e 0d 0a 49 6e 20 74 68 65 20 65 6e  ..<p>..In the en
0540: 64 20 79 6f 75 20 77 65 6c 6c 20 68 61 76 65 20  d you well have 
0550: 61 20 64 69 72 65 63 74 6f 72 79 20 77 69 74 68  a directory with
0560: 20 74 68 65 20 6e 61 6d 65 20 6f 66 20 61 72 67   the name of arg
0570: 75 6d 65 6e 74 34 20 28 63 6f 6e 74 61 69 6e 69  ument4 (containi
0580: 6e 67 20 74 68 65 20 67 69 74 20 72 65 70 6f 73  ng the git repos
0590: 69 74 6f 72 79 29 20 61 6e 64 20 61 20 66 69 6c  itory) and a fil
05a0: 65 20 63 61 6c 6c 65 64 20 61 72 67 75 6d 65 6e  e called argumen
05b0: 74 34 2e 66 6f 73 73 69 6c 20 77 69 74 68 20 74  t4.fossil with t
05c0: 68 65 20 6e 65 77 20 66 6f 73 73 69 6c 20 72 65  he new fossil re
05d0: 70 6f 73 69 74 6f 72 79 2e 0d 0a 3c 70 3e 0d 0a  pository...<p>..
05e0: 45 78 61 6d 70 6c 65 3a 0d 0a 3c 76 65 72 62 61  Example:..<verba
05f0: 74 69 6d 3e 0d 0a 73 68 20 63 76 73 32 66 6f 73  tim>..sh cvs2fos
0600: 73 69 6c 6e 65 77 20 68 79 70 6e 6f 74 6f 61 64  silnew hypnotoad
0610: 20 3a 70 73 65 72 76 65 72 3a 61 6e 6f 6e 79 6d   :pserver:anonym
0620: 6f 75 73 40 74 6c 73 2e 63 76 73 2e 73 6f 75 72  ous@tls.cvs.sour
0630: 63 65 66 6f 72 67 65 2e 6e 65 74 3a 2f 63 76 73  ceforge.net:/cvs
0640: 72 6f 6f 74 2f 74 6c 73 20 74 6c 73 20 74 6c 73  root/tls tls tls
0650: 0d 0a 2a 20 50 72 6f 6d 70 74 73 20 66 6f 72 20  ..* Prompts for 
0660: 43 56 53 20 50 61 73 73 77 6f 72 64 2a 0d 0a 3c  CVS Password*..<
0670: 69 3e 4c 6f 74 73 20 6f 66 20 61 63 74 69 76 69  i>Lots of activi
0680: 74 79 3c 2f 69 3e 0d 0a 44 6f 6e 65 21 2e 0d 0a  ty</i>..Done!...
0690: 63 6f 6e 74 61 63 74 2d 69 6e 66 6f 3a 20 53 65  contact-info: Se
06a0: 61 6e 20 57 6f 6f 64 73 0d 0a 70 61 73 73 77 6f  an Woods..passwo
06b0: 72 64 3a 20 0d 0a 52 65 74 79 70 65 20 6e 65 77  rd: ..Retype new
06c0: 20 70 61 73 73 77 6f 72 64 3a 20 0d 0a 3c 2f 76   password: ..</v
06d0: 65 72 62 61 74 69 6d 3e 0d 0a 3c 70 3e 0d 0a 49  erbatim>..<p>..I
06e0: 66 20 49 20 6c 73 20 74 68 65 20 64 69 72 65 63  f I ls the direc
06f0: 74 6f 72 79 3a 0d 0a 3c 70 3e 0d 0a 3c 76 65 72  tory:..<p>..<ver
0700: 62 61 74 69 6d 3e 0d 0a 6c 73 0d 0a 63 76 73 32  batim>..ls..cvs2
0710: 66 6f 73 73 69 6c 2e 73 68 0d 0a 74 63 6c 76 66  fossil.sh..tclvf
0720: 73 2e 66 6f 73 73 69 6c 0d 0a 74 63 6c 76 66 73  s.fossil..tclvfs
0730: 2f 0d 0a 3c 2f 76 65 72 62 61 74 69 6d 3e 0d 0a  /..</verbatim>..
0740: 0a 5a 20 61 31 64 62 63 66 33 64 39 65 39 62 37  .Z a1dbcf3d9e9b7
0750: 39 61 37 33 63 33 66 30 39 34 62 36 31 35 32 38  9a73c3f094b61528
0760: 64 37 61 0a                                      d7a.