bzr branch
http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
1 |
#!/usr/bin/env python
|
2 |
"""\
|
|
3 |
This is an attempt to take the internal delta object, and represent
|
|
4 |
it as a single-file text-only changeset.
|
|
5 |
This should have commands for both generating a changeset,
|
|
6 |
and for applying a changeset.
|
|
7 |
"""
|
|
8 |
||
9 |
import bzrlib, bzrlib.commands |
|
10 |
||
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
11 |
class cmd_send_changeset(bzrlib.commands.Command): |
12 |
"""Send a bundled up changset via mail. |
|
13 |
||
14 |
If no revision has been specified, the last commited change will
|
|
15 |
be sent.
|
|
16 |
||
|
0.5.30
by John Arbash Meinel
Merging send-changeset updates from jrydberg |
17 |
Subject of the mail can be specified by the --message option,
|
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
18 |
otherwise information from the changeset log will be used.
|
|
0.5.30
by John Arbash Meinel
Merging send-changeset updates from jrydberg |
19 |
|
20 |
A editor will be spawned where the user may enter a description
|
|
21 |
of the changeset. The description can be read from a file with
|
|
22 |
the --file FILE option.
|
|
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
23 |
"""
|
|
0.5.31
by John Arbash Meinel
Some cleanup to the send_changeset work. |
24 |
takes_options = ['revision', 'message', 'file'] |
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
25 |
takes_args = ['to?'] |
26 |
||
|
0.5.31
by John Arbash Meinel
Some cleanup to the send_changeset work. |
27 |
def run(self, to=None, message=None, revision=None, file=None): |
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
28 |
from bzrlib import find_branch |
29 |
from bzrlib.commands import BzrCommandError |
|
|
0.5.31
by John Arbash Meinel
Some cleanup to the send_changeset work. |
30 |
from send_changeset import send_changeset |
|
0.5.30
by John Arbash Meinel
Merging send-changeset updates from jrydberg |
31 |
|
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
32 |
if isinstance(revision, (list, tuple)): |
33 |
if len(revision) > 1: |
|
34 |
raise BzrCommandError('We do not support rollup-changesets yet.') |
|
35 |
revision = revision[0] |
|
36 |
||
37 |
b = find_branch('.') |
|
38 |
||
39 |
if not to: |
|
40 |
try: |
|
41 |
to = b.controlfile('x-send-address', 'rb').read().strip('\n') |
|
42 |
except: |
|
43 |
raise BzrCommandError('destination address is not known') |
|
44 |
||
|
0.5.31
by John Arbash Meinel
Some cleanup to the send_changeset work. |
45 |
if not isinstance(revision, (list, tuple)): |
46 |
revision = [revision] |
|
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
47 |
|
|
0.5.31
by John Arbash Meinel
Some cleanup to the send_changeset work. |
48 |
send_changeset(b, revision, to, message, file) |
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
49 |
|
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
50 |
class cmd_changeset(bzrlib.commands.Command): |
51 |
"""Generate a bundled up changeset. |
|
52 |
||
53 |
This changeset contains all of the meta-information of a
|
|
54 |
diff, rather than just containing the patch information.
|
|
|
0.5.7
by John Arbash Meinel
Added a bunch more information about changesets. Can now read back in all of the meta information. |
55 |
|
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
56 |
It will store it into FILENAME if supplied, otherwise it writes
|
57 |
to stdout
|
|
58 |
||
|
0.5.7
by John Arbash Meinel
Added a bunch more information about changesets. Can now read back in all of the meta information. |
59 |
Right now, rollup changesets, or working tree changesets are
|
60 |
not supported. This will only generate a changeset that has been
|
|
61 |
committed. You can use "--revision" to specify a certain change
|
|
62 |
to display.
|
|
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
63 |
"""
|
|
0.5.27
by John Arbash Meinel
Now capable of generating rollup changesets. |
64 |
takes_options = ['revision'] |
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
65 |
takes_args = ['filename?'] |
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
66 |
aliases = ['cset'] |
67 |
||
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
68 |
def run(self, revision=None, filename=None): |
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
69 |
from bzrlib import find_branch |
70 |
import gen_changeset |
|
71 |
import sys |
|
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
72 |
import codecs |
73 |
||
74 |
if filename is None or filename == '-': |
|
75 |
outf = codecs.getwriter(bzrlib.user_encoding)(sys.stdout, errors='replace') |
|
76 |
else: |
|
77 |
f = open(filename, 'wb') |
|
78 |
outf = codecs.getwriter(bzrlib.user_encoding)(f, errors='replace') |
|
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
79 |
|
|
0.5.27
by John Arbash Meinel
Now capable of generating rollup changesets. |
80 |
if not isinstance(revision, (list, tuple)): |
81 |
revision = [revision] |
|
82 |
b = find_branch('.') |
|
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
83 |
|
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
84 |
gen_changeset.show_changeset(b, revision, to_file=outf) |
|
0.5.1
by John Arbash Meinel
Just an initial working step. |
85 |
|
|
0.5.7
by John Arbash Meinel
Added a bunch more information about changesets. Can now read back in all of the meta information. |
86 |
class cmd_verify_changeset(bzrlib.commands.Command): |
87 |
"""Read a written changeset, and make sure it is valid. |
|
88 |
||
89 |
"""
|
|
90 |
takes_args = ['filename?'] |
|
91 |
||
92 |
def run(self, filename=None): |
|
93 |
import sys, read_changeset |
|
94 |
if filename is None or filename == '-': |
|
95 |
f = sys.stdin |
|
96 |
else: |
|
97 |
f = open(filename, 'rb') |
|
98 |
||
|
0.5.17
by John Arbash Meinel
adding apply-changset, plus more meta information. |
99 |
cset_info = read_changeset.read_changeset(f) |
100 |
print cset_info |
|
101 |
cset = cset_info.get_changeset() |
|
102 |
print cset.entries |
|
|
0.5.7
by John Arbash Meinel
Added a bunch more information about changesets. Can now read back in all of the meta information. |
103 |
|
|
0.5.15
by John Arbash Meinel
Created an apply-changeset function, and modified output for better parsing. |
104 |
class cmd_apply_changeset(bzrlib.commands.Command): |
105 |
"""Read in the given changeset, and apply it to the |
|
106 |
current tree.
|
|
107 |
||
108 |
"""
|
|
109 |
takes_args = ['filename?'] |
|
110 |
takes_options = [] |
|
111 |
||
|
0.5.18
by John Arbash Meinel
Some minor fixups |
112 |
def run(self, filename=None, reverse=False, auto_commit=False): |
|
0.5.15
by John Arbash Meinel
Created an apply-changeset function, and modified output for better parsing. |
113 |
from bzrlib import find_branch |
|
0.5.17
by John Arbash Meinel
adding apply-changset, plus more meta information. |
114 |
import sys |
115 |
import apply_changeset |
|
|
0.5.15
by John Arbash Meinel
Created an apply-changeset function, and modified output for better parsing. |
116 |
|
117 |
b = find_branch('.') # Make sure we are in a branch |
|
118 |
if filename is None or filename == '-': |
|
119 |
f = sys.stdin |
|
120 |
else: |
|
|
0.5.29
by John Arbash Meinel
Added a file to put the changeset into. |
121 |
f = open(filename, 'U') # Universal newlines |
|
0.5.15
by John Arbash Meinel
Created an apply-changeset function, and modified output for better parsing. |
122 |
|
|
0.5.17
by John Arbash Meinel
adding apply-changset, plus more meta information. |
123 |
apply_changeset.apply_changeset(b, f, reverse=reverse, |
124 |
auto_commit=auto_commit) |
|
|
0.5.15
by John Arbash Meinel
Created an apply-changeset function, and modified output for better parsing. |
125 |
|
|
0.5.7
by John Arbash Meinel
Added a bunch more information about changesets. Can now read back in all of the meta information. |
126 |
|
|
0.5.24
by John Arbash Meinel
Adding send-changeset from Johan Rydberg |
127 |
bzrlib.commands.register_command(cmd_changeset) |
128 |
bzrlib.commands.register_command(cmd_verify_changeset) |
|
129 |
bzrlib.commands.register_command(cmd_apply_changeset) |
|
130 |
bzrlib.commands.register_command(cmd_send_changeset) |
|
131 |
||
132 |
bzrlib.commands.OPTIONS['reverse'] = None |
|
133 |
bzrlib.commands.OPTIONS['auto-commit'] = None |
|
134 |
cmd_apply_changeset.takes_options.append('reverse') |
|
135 |
cmd_apply_changeset.takes_options.append('auto-commit') |