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