source: tailor/README @ 172

Revision 172, 4.1 KB checked in by Mark Stosberg <mark@…>, 8 years ago (diff)

Add README and improve docs

RevLine 
[172]1ABOUT
2----------------------------------------------------------------------
3tailor.py is tool to synchronize CVS, Subversion, and darcs repositories.
4
5This script makes it easier to keep the upstream changes merged in
6a branch of a product, storing needed information such as the upstream
7URI and revision in special properties on the branched directory.
8
9
10INSTALLATION
11----------------------------------------------------------------------
12tailor.py is written in python, and thus python must be installed on your
13system to use it.
14
15Make tailor.py executable:
16
17 $ chmod +x tailor.py
18
19You can either run tailor.py where it is currently located, or move it
20along with the vcpx directory to a location in your PATH.
21
22
23EXAMPLES
24----------------------------------------------------------------------
25
26  # Bootstrap a new taylored project, starting at upstream revision 10
27  $ tailor.py -b -s svn -R http://svn.server/Product -r 10 ~/darcs/MyProduct
28
29  # Bootstrap a new product, fetching from CVS and storing under SVN: this
30  # will create the directory "~/svnwc/cmfcore"; "~/svnwc" must be already
31  # under SVN.
32  $ tailor.py --source-kind cvs --target-kind svn --bootstrap \
33              --repository :pserver:cvs.zope.org:/cvs-repository \
34              --module CMF/CMFCore ~/svnwc/cmfcore
35 
36  # Showing each command bootstrap a new DARCS repos in "~/darcs/cmftopic"
37  # under which the upstream module will be extracted as "CMFTopic" (ie, the
38  # last component of the module name).
39  $ tailor.py -D -b -R :pserver:anonymous@cvs.zope.org:/cvs-repository/ \
40              -m CMF/CMFTopic ~/darcs/cmftopic
41             
42  # Merge upstream changes since last update/bootstrap
43  $ tailor.py ~/svnwc/MyProduct
44
45
46CONFIG FILE FORMAT
47----------------------------------------------------------------------
48
49Here's an example config file entry:
50
51 {'plone/atcontenttypes': {'module': 'ATContentTypes',
52                           'source_kind': 'cvs',
53                           'subdir': 'ATContentTypes',
54                           'target_kind': 'darcs',
55                           'upstream_repos': ':ext:cvs.sourceforge.net:/cvsroot/collective',
56                           'upstream_revision': '2004-11-24 19:42:06 by ctheune'}}
57
58The above represents one entry in a config file.  You can multiple entries,
59but be careful to make sure have an extra bracket on the first and last lines
60of the file. Here's an example with three entries to illustrate this:
61
62 {'plone/atcontenttypes': {'module': 'ATContentTypes',
63                           'source_kind': 'cvs',
64                           'subdir': 'ATContentTypes',
65                           'target_kind': 'darcs',
66                           'upstream_repos': ':ext:cvs.sourceforge.net:/cvsroot/collective',
67                           'upstream_revision': '2004-11-24 19:42:06 by ctheune'},
68  'plone/btreefolder2': {'module': 'Products/BTreeFolder2',
69                         'source_kind': 'cvs',
70                         'subdir': 'BTreeFolder2',
71                         'target_kind': 'darcs',
72                         'upstream_repos': ':pserver:anonymous@cvs.zope.org:/cvs-repository',
73                         'upstream_revision': '2004-06-16 23:45:45 by shane'},
74  'plone/cmfactionicons': {'module': 'CMF/CMFActionIcons',
75                           'source_kind': 'cvs',
76                           'subdir': 'CMFActionIcons',
77                           'target_kind': 'darcs',
78                           'upstream_repos': ':pserver:anonymous@cvs.zope.org:/cvs-repository',
79                           'upstream_revision': '2004-10-04 17:03:38 by tseaver'}}
80
81By convention, config files are named with the extension ".tailor", but this is
82not enforced.
83
84In the example above, 'plone/atcontenttypes' is a directory where the target source
85will be stored. The keys such 'module', 'source_kind', etc correspond to options
86of the same name. See the output of 'tailor.py' for more details.
87
88
89FURTHER HELP
90----------------------------------------------------------------------
91See the output of tailor.py -h for some further tips.
92
93
94AUTHOR
95----------------------------------------------------------------------
96Lele Gaifax <lele@nautilus.homeip.net>
97
98
Note: See TracBrowser for help on using the repository browser.