<br>Even though I have used bzr to manage my own work, I must learn a lot about deploying it for collaborative projects. So please indulge my simple email.<br><br>I notice something interesting about nested branches. I personally think the project-within-a-project idea is asking for trouble, but I also know that I have done it unintentionally in my own work. So my coworkers may too. It's easy to do, because "bzr init" works in any directory which does not already directly contain a .bzr subdirectory. So I have to be prepared to manage this. <br>
<br>The bzr commands which act on one branch at a time (not counting plugins like bzrtools which manage multiple branches) very logically act on the nearest enclosing branch. Makes sense. <br><br>I also see that the Tortoise shell extension does not allow me to bzr init in any directory which is contained by a directory (directlly or indirectly) by a directory which directly contains a .bzr subdirectory. That's good for me, but maybe not for some people. (I can still fool Tortoise by creating a branch in a directory above the first branch...) <br>
<br>I wonder how often people need to create branches within branches compared to how often this happens accidentally and causes problems. I believe in individual responsibility but I also have to think about varying levels of experience of the people on my team. I can't always control that. So it would be nice if "bzr init" would refuse to create a nested branch (by traversing up to / looking for an existing .bzr) unless the user says they really mean it. A session could look like this:<br>
<br><span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza></span> bzr init Project_A</span><span style="background-color: rgb(255, 255, 255);"> </span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">Created a standalone tree(format: pack-0.92)</span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza></span> cd Project_A</span><br><span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza/Project_A></span> mkdir flowers</span><br>
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza/Project_A></span></span><span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);"></span> cd flowers</span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza/Project_A/flowers></span> bzr init Project_B</span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">Branch not created! Enclosing brnach found at /home/martitza/Project_A<br>Use --nest to create nested branches.</span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);"><span style="color: rgb(204, 0, 0);">~/martitza/Project_A/flowers></span> bzr init --nest Project_B</span><br style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">
<span style="font-family: courier new,monospace; background-color: rgb(255, 255, 255);">Created a standalone tree(format: pack-0.92)</span><br>
<br>Just a suggestion. This would be helpful for us, but maybe not others.<br><br>-M<br><br>