~qbzr-dev/qbzr/0.22

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
======================================
 QBzr - Qt-based front end for Bazaar
======================================

QBzr is a cross platform, Qt-based front-end for Bazaar, providing GUI
applications for many core bzr commands. In addition, it provides several
special dialogs and helper commands. Equivalents for core bzr commands have
the same names as CLI commands but with a prefix of "q".

Requirements
============

 * Python 2.4-2.7
              
 * Bazaar VCS itself (see below version compatibility information)

 * PyQt 4.4 with Qt 4.4 or later
   http://www.riverbankcomputing.co.uk/pyqt/
   http://www.trolltech.com/products/qt

 * Pygments v.1.0 or higher (optional, needed for syntax highlighting)
   http://pygments.pocoo.org/

 * PyEnchant (optional, needed for spellchecking in qcommit)
   http://pyenchant.sourceforge.net/


Compatibility between qbzr and bzr versions
===========================================

 * QBzr 0.22 is targeted to bzr 2.5 and compatible with bzr 2.4
   It may not work with older versions of bzr.

 * QBzr 0.21 is targeted to bzr 2.4 and compatible with bzr 2.3.
   It may not work with older versions of bzr.

 * QBzr 0.20 is targeted to bzr 2.3 and compatible with bzr 2.2.
   It may not work with older versions of bzr.

 * QBzr 0.19 required bzr 2.2 and compatible with bzr 2.1.
   It may not work with older versions of bzr.

 * QBzr 0.18.x required bzr 2.1.x.
   Some commands/dialogs are working with bzr 1.17, 1.18.x, 2.0.x.
   It may work with bzr 2.2 or later, but this is not guaranteed.

 * QBzr 0.14.x compatible with bzr 1.17, 1.18.x, 2.0.x. 


Other bzr plugins that improve QBzr
===================================

 * bzr-search (Makes searching in log faster)
   https://launchpad.net/bzr-search

 * bzr-difftools (Improves the usability of launching external diffs)
   https://launchpad.net/bzr-difftools

 * bzr-extmerge (Required to lauch external merge applications to resolve
   conficts.)
   https://launchpad.net/bzr-extmerge


Provided Commands
=================

Basic q-commands:

 * qadd - GUI for adding files or directories.
 * qannotate - Show the origin of each line in a file.
 * qbind - Convert the current branch into a checkout of the supplied branch.
 * qbranch - Create a new copy of a branch.
 * qcat - View the contents of a file as of a given revision.
 * qcommit - GUI for committing revisions.
 * qconflicts - Show conflicts.
 * qdiff - Show differences in working tree in a GUI window.
 * qexport - Export current or past revision to a destination directory or archive.
 * qignore - Ignore files or patterns.
 * qinfo - Shows information about the current location.
 * qinit - Initializes a new branch or shared repository.
 * qlog - Show log of a repository, branch, file, or directory in a Qt window.
 * qmerge - Perform a three-way merge.
 * qplugins - Display information about installed plugins.
 * qpull - Turn this branch into a mirror of another branch.
 * qpush - Update a mirror of this branch.
 * qrevert - Revert changes files.
 * qsend - Mail or create a merge-directive for submitting changes.
 * qswitch - Set the branch of a checkout and update.
 * qtag - Edit tags.
 * qunbind - Convert the current checkout into a regular branch.
 * quncommit - Move the tip of a branch to an earlier revision.
 * qupdate - Update working tree with latest changes in the branch.
 * qverify-signatures - Show digital signatures information
 * qversion - Show version/system information.

Hybrid dialogs:

 * qgetnew - Creates a new working tree (either a checkout or full branch).
 * qgetupdates - Fetches external changes into the working tree.

Additional commands:

 * qbrowse - Show inventory or working tree.
 * qconfig - Configure Bazaar and QBzr.
 * qrun - Run arbitrary bzr command.
 * qviewer - Simple file viewer.

Miscellaneous:

 * bug-url - print full URL to a specific bug, or open it in your browser.


Interface localization
======================

QBzr uses gettext library for i18n support. 
Available translations resides in po/ subdirectory of the tree.
QBzr expects to load binary mo-files from locale/ subdirectory
of the tree.

To generate translation POT-template file you need to run command:
	python setup.py build_pot

All existing PO-files will be updated as well.

To compile translations to binary mo-files you need to run command:
	python setup.py build_mo

NOTE: windows installer ships with latest compiled translation inside.

Help translate
~~~~~~~~~~~~~~

You can help to translate QBzr interface to other languages.

You can use either Launchpad trnaslations interface (it's preferable way) 
see https://translations.launchpad.net/qbzr,
or you can translate it offline, see instructions below.

First at all you need to download from 
http://bazaar.launchpad.net/~qbzr-dev/qbzr/trunk/files
either `po/qbzr-XX.po` (where XX is your language and country code) 
or `po/qbzr.pot` if there is no po-file for your language yet.

Then you need to translate it either using any suitable text editor 
with UTF-8 support or with tools like Poedit (http://www.poedit.net/)  
or KBabel (http://kbabel.kde.org/).

When you're finish please file a bug report at
https://launchpad.net/qbzr/+filebug and attach the translated file.

To learn more about gettext and po-files see:
	http://www.gnu.org/software/gettext/

Language and country codes listed in gettext manual:
	http://www.gnu.org/software/gettext/manual/gettext.html#Language-Codes
        http://www.gnu.org/software/gettext/manual/gettext.html#Country-Codes


Configuration
=============

The configuration is in .bazaar/qbzr.conf.

qlog_replace
~~~~~~~~~~~~

Multiline value containing regular expressions to replace text in commit
messages (useful to make clickable links to bug reports, ...). Can be used
for example by adding:

qlog_replace='''#(\d+)
<a href="https://launchpad.net/qbzr/+bug/\1">#\1</a>'''

to project/.bzr/branch/branch.conf.


diff_show_intergroup_colors
~~~~~~~~~~~~~~~~~~~~~~~~~~~
Boolean value to allow painting interline changes in different colors
depend on the kind of change. Use values 'True' or '1' to enable option.


More Info
=========

 * Mailing list/Discussion forum:
   http://groups.google.com/group/qbzr

 * Bug Tracker, Source Code, Translations, Questions:
   https://launchpad.net/qbzr