mercurial/HG2CVS.st
author Jan Vrany <jan.vrany@labware.com>
Fri, 19 Feb 2021 08:29:41 +0000
changeset 924 4d92f234f671
parent 509 f92210d4585b
child 766 7bbb7b74b8b1
permissions -rw-r--r--
Rework and fix HGSourceCodeManager >> #revisionLogOf:...directory:module:` This commit changes the logic in two ways: 1. #newestRevision is now the newest revision in the branch that *contains* given file (not necesarily modidfes it). If there are multiple heads in that branch, pretty much random one is returned. This changes old behavior and therefore this commit updates tests. 2. If a specific single revision is requested, i.e., both from and to revisions are the same, revision log with that single revision is returned no matter whether it modifies the file or even contains that file at all. This is essentially a workaround to fix issue #305. Moreover, this commit simplifies the code a lot by delegating all the changeset searching and filtering to mercurial using revset expressions. See https://swing.fit.cvut.cz/projects/stx-jv/ticket/305#comment:3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 343
diff changeset
     3
Copyright (C) 2012-2015 Jan Vrany
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
This library is free software; you can redistribute it and/or
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
modify it under the terms of the GNU Lesser General Public
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
License as published by the Free Software Foundation; either
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
version 2.1 of the License. 
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    10
This library is distributed in the hope that it will be useful,
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    11
but WITHOUT ANY WARRANTY; without even the implied warranty of
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    13
Lesser General Public License for more details.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    14
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    15
You should have received a copy of the GNU Lesser General Public
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    16
License along with this library; if not, write to the Free Software
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    17
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    18
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    19
"{ Package: 'stx:libscm/mercurial' }"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    20
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    21
Object subclass:#HG2CVS
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
    22
	instanceVariableNames:'srcRoot dstRoot script'
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    23
	classVariableNames:''
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    24
	poolDictionaries:''
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    25
	category:'SCM-Mercurial-CVS'
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    26
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    27
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    28
!HG2CVS class methodsFor:'documentation'!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    29
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    30
copyright
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    31
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    32
stx:libscm - a new source code management library for Smalltalk/X
509
f92210d4585b Updated copyright notice.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 343
diff changeset
    33
Copyright (C) 2012-2015 Jan Vrany
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    34
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    35
This library is free software; you can redistribute it and/or
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    36
modify it under the terms of the GNU Lesser General Public
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    37
License as published by the Free Software Foundation; either
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    38
version 2.1 of the License. 
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    39
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    40
This library is distributed in the hope that it will be useful,
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
but WITHOUT ANY WARRANTY; without even the implied warranty of
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
Lesser General Public License for more details.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
You should have received a copy of the GNU Lesser General Public
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
License along with this library; if not, write to the Free Software
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    50
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    51
documentation
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    52
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    53
    A simple and naive tool to update CVS to match the Mercurial repository.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    54
    Yes, believe or not, there are still CVS repositories out there,
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    56
    [author:]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
        Jan Vrany <jan.vrany@fit.cvut.cz>
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
    [instance variables:]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    [class variables:]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
    [see also:]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
! !
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
!HG2CVS methodsFor:'accessing'!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
dstRoot
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    ^ dstRoot
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
dstRoot:something
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
    dstRoot := something.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
srcRoot
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    79
    ^ srcRoot
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
srcRoot:something
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
    srcRoot := something.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
! !
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
!HG2CVS methodsFor:'updating'!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    88
add: file
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    89
    self cvs: 'add' files: { file } in: file directory.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    90
    file isDirectory ifTrue:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    91
        |  files dirs |
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    92
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    93
        files := OrderedCollection new.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
        dirs := OrderedCollection new.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
        file directoryContentsAsFilenamesDo:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    96
            (self shouldIgnore: e baseName) ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    97
               e isDirectory ifTrue:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    98
                   dirs add: e
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    99
                ] ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   100
                    files add: e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   101
                ]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
            ]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
        ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
        self cvs: 'add' files: files in: file.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
        dirs do:[:e|self add: e].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
    "Created: / 15-02-2013 / 11:04:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
    "Modified: / 15-02-2013 / 18:33:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
cvs: cmd files: files in: wd
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
    | filesAsString cmdLine |
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    files isEmpty ifTrue:[ ^ self ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   119
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   120
    filesAsString := String streamContents:[:s|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
        files do:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
            s nextPut: $'; nextPutAll: e baseName; nextPut: $'; space.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
        ]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
    cmdLine := ('cvs ', cmd ,' ', filesAsString).
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    Transcript showCR: '  --> exec: ', cmdLine.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   128
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   129
    script := 
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   130
        script , Character cr ,
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   131
        ('pushd %1
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   132
%2
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   133
popd') bindWith: wd asString with: cmdLine.
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
    "Created: / 15-02-2013 / 12:27:57 / Jan Vrany <jan.vrany@fit.cvut.cz>"
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   136
    "Modified: / 06-09-2013 / 00:52:29 / Jan Vrany <jan.vrany@fit.cvut.cz>"
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
remove: file
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
    file isDirectory ifTrue:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
        file directoryContentsAsFilenamesDo:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
            (self shouldIgnore: e baseName) ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
               self remove: e
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
            ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
        ]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
    file isDirectory ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
        file remove.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
    self cvs: 'remove' files: { file } in: file directory.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
    "Created: / 15-02-2013 / 11:04:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
    "Modified: / 15-02-2013 / 18:33:26 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
shouldIgnore: basename
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
    ^ #('.cvsignore' 'CVS' '.svn' '.hg' 'thesis') includes: basename
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
    "Created: / 15-02-2013 / 11:30:58 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
update
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   164
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   165
    script := ''.
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   166
    self update: srcRoot to: dstRoot.
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   167
    script := script , Character cr , 'cvs commit'.
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   168
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   169
    (dstRoot asFilename / 'commit.sh') writingFileDo:[:s|
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   170
        s nextPutAll: script.
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   171
        s cr.
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   172
    ].
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
    "Created: / 15-02-2013 / 11:05:17 / Jan Vrany <jan.vrany@fit.cvut.cz>"
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   175
    "Modified: / 06-09-2013 / 00:50:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
342
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
!
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
update: src to: dst
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
    | srcFiles dstFiles additions removals common additionsF additionsD |
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
    srcFiles := src directoryContents reject:[:e|self shouldIgnore: e].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
    dstFiles := dst directoryContents reject:[:e|self shouldIgnore: e].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
    removals := dstFiles \ srcFiles.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
    additions := srcFiles \ dstFiles.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
    common := srcFiles intersect:dstFiles.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   186
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
    Transcript showCR: ' ==== ' , dst pathName , ' ===='.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
    removals do:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
       Transcript showCR:' Removing ', e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
       self remove: dst / e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
    additionsF := OrderedCollection new.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   195
    additionsD := OrderedCollection new.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   196
    additions do:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
        | srcF dstF |
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
        Transcript showCR:' Adding ', e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
        srcF := src / e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
        dstF := dst / e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
        srcF recursiveCopyTo:dstF.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
        srcF isDirectory ifTrue:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
            additionsD add: dstF
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   205
        ] ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
            additionsF add: dstF
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
        ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
    additionsD do:[:e|self add:e].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
    self cvs: 'add' files: additionsF in: dst.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
    common do:[:e|
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   215
        | srcF dstF |
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   216
        srcF := src / e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   217
        dstF := dst / e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   218
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   219
        Transcript showCR:' Updating ', e.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   220
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   221
        srcF isDirectory ifTrue:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   222
            self assert: dstF isDirectory.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   223
            self update: srcF to: dstF
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   224
        ] ifFalse:[
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   225
            srcF copyTo: dstF.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   226
        ]
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   227
    ].
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   228
    Transcript showCR: ' ==== ===='.
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   229
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   230
    "Created: / 15-02-2013 / 11:03:34 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   231
    "Modified: / 15-02-2013 / 18:45:05 / Jan Vrany <jan.vrany@fit.cvut.cz>"
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   232
! !
3a4b76932414 Added HG2CVS tool for naive synchronization of CVS from Mercuriual repo.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   233
343
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   234
!HG2CVS class methodsFor:'documentation'!
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   235
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   236
version_HG
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   237
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   238
    ^ '$Changeset: <not expanded> $'
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   239
! !
d40b11749ba4 Changed HG2CVS to generate a commit script instead of issuing cvs commands immediately.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 342
diff changeset
   240