Bazaar Workflow
Neil Martinsen-Burrell
nmb at wartburg.edu
Sun Apr 5 19:52:41 BST 2009
Philippe Lhoste <PhiLho <at> GMX.net> writes:
[...]
> - Bazaar doesn't have this (you don't have to check out a file before
> editing it, which is nice) but allows to select files to commit. A bit
> heavy handed on the command line (I would appreciate to have a file
> (listing files to commit) per task, and specify it at commit time), but
> I recall having seen a plugin using the commit file (opened if not
> giving a -m option) where you can select the files to commit.
This is the purpose of Bazaar views. See http://bazaar-vcs.org/FilteredViews
for a description of how to use them, or in a recent revision of bzr.dev, do
``bzr help view``. This is a new feature for Bazaar, so as much testing as
possible is desirable. If you try the feature and have feedback about how it
works,
> Moreover, I am confused by the other answers telling you can't "merge
> with uncommitted changes in your local working copy.", I wonder what I
> did in my previous experiment. I should make more thorough tests (with
> conflicting edits?).
I see the following in a similar test, starting from scratch:
nmb at guttle[~/src/bzr/bzr.dev]$ cd /tmp
nmb at guttle[/tmp]$ bzr init test
d Created a standalone tree (format: pack-0.92)
nmb at guttle[/tmp]$ cd test
nmb at guttle[/tmp/test]$ echo "test" >a
nmb at guttle[/tmp/test]$ bzr add
adding a
nmb at guttle[/tmp/test]$ bzr ci -m 'first commit'
Committing to: /private/tmp/test/
added a
Committed revision 1.
nmb at guttle[/tmp/test]$ cd ..
nmb at guttle[/tmp]$ bzr branch test new
Branched 1 revision(s).
nmb at guttle[/tmp]$ cd new
nmb at guttle[/tmp/new]$ echo "Blech" >>a
nmb at guttle[/tmp/new]$ bzr st
modified:
a
nmb at guttle[/tmp/new]$ cd ../test
nmb at guttle[/tmp/test]$ sed -i -e s/test/Test/ a
nmb at guttle[/tmp/test]$ bzr ci -m 'capitalize'
Committing to: /private/tmp/test/
modified a
Committed revision 2.
nmb at guttle[/tmp/test]$ cd ../new
nmb at guttle[/tmp/new]$ bzr merge
bzr: ERROR: Working tree "/private/tmp/new/" has uncommitted changes.
The same thing occurs if the changes are non-conflicting:
nmb at guttle[/tmp/new]$ bzr ci -m 'local change'
Committing to: /private/tmp/new/
modified a
Committed revision 2.
nmb at guttle[/tmp/new]$ bzr merge
Merging from remembered parent location /private/tmp/test/
M a
Text conflict in a
1 conflicts encountered.
nmb at guttle[/tmp/new]$ vi a
nmb at guttle[/tmp/new]$ bzr resolved
All conflicts resolved.
nmb at guttle[/tmp/new]$ bzr ci -m 'merged'
Committing to: /private/tmp/new/
modified a
Committed revision 3.
nmb at guttle[/tmp/new]$ cd ../test
nmb at guttle[/tmp/test]$ echo 'new file' > b
nmb at guttle[/tmp/test]$ bzr add b
adding b
nmb at guttle[/tmp/test]$ bzr merge ../new
bzr: ERROR: Working tree "/private/tmp/test/" has uncommitted changes.
I'm not certain how that compares to what you did, but that is what I see.
-Neil
More information about the bazaar
mailing list