osdir.com
mailing list archive
Mozy Online Backup: 2GB Free. Automatic. Secure.

Subject: Where is "all" data stored; so which .bzr dire may be removed? - msg#00843

List: bazaar

Date: Prev Next Index Thread: Prev Next Index
Hello All,

I' have lots of experience with version control tool; although I may be cvs-biased in terminology. And using bazaar for some time now. Normal operation is fine
However, I''m still a bit wondered about the mixture of (shared) repositories and branches. This is also feed due to cvsps-import (layout).

When wo look to directories we I see too kind of them:
1) The normal direcories, holding files to edit and such ("working dirs")
2) The dirs called .bzr (dot-bzr) holding bzr-branch and bzr- repo data

Even with a "shared" repository, there are a lot of .bzr dir.
In CVS-terms, a repository hold "all version, all files all branches".

My first question: does the shared-.bzr dir also holds "all". If so, then I should be allowed to delete all other .bzr dirs in subdirs of that shared repository
Of course, this will be only valid when no changes are committed.

If so, how can I re-create those brances. Meaning: get a working dir (the lastest version in that branch). Remember, I do not know the name of the branch.

More specific.
I have converted a small, personal 'tryOut' cvs-repo to bzr, with bzr cvsps-import. After deleting the stagginf stuff and cleaning empty top- dirs, I have the following dirs:
.../TryOut
.../TryOut/.bzr
## shared bzr-repo (bzr-dir no 0)
.../TryOut/branches
.../TryOut/branches/Apple_Darkroom
.../TryOut/branches/Apple_Darkroom/.bzr ## bzr-dir no 1
.../TryOut/branches/Apple_Goldenrod/
.../TryOut/branches/Apple_Goldenrod/.bzr ## bzr-dir no 4
.../TryOut/branches/HEAD/
.../TryOut/branches/HEAD/.bzr ##
bzr-dir no 3
.../TryOut/tags/
.../TryOut/tags/GAM20071219/
.../TryOut/tags/GAM20071219/.bzr ## bzr-dir no 3
.../TryOut/tags/GAM20080201/
.../TryOut/tags/GAM20080201/.bzr ## bzr-dir no 3

I do know the /{branches,tags}/ part is due to cvsps; it's a bit svn- like; but I do not like/love/want it. Basically, I only have one branch of developement: "HEAD" . Sometimes I do create a small, temporally brach, to try some alternatives. Apperently I have done so twice; probably only for a sub project/module/dir.
And I do use tags to mark "important" versions. again I have done so as it shows.
Currently I'n not working on those versions/branches and do not plan to do so. But I do not want to lose the data.

My next question: which .bzr files do I need to keep (and backup) and which can I delete?
And the last question. How can I (when those dirs are gone) find the names again.

Thanks. Please CC directly to me, and to the list.

--Groetjes, Albert

ALbert Mietus
GSM: +316 16 531 258
Send prive mail to: ALbert at ons-huis dot net
Don't send spam mail!
Mijn missie: http://SoftwareBeterMaken.nl product, proces & imago.
Mijn leven in het kort: http://albert.mietus.nl/Doc/CV_ALbert.html




Was this page helpful?
Yes No
Thread at a glance:

Previous Message by Date: click to view message preview

Re: [qbzr] Re: [RFC] push and --no-strict and QBzr

Hello Martin, Martin Pool a écrit, Le 24.07.2009 01:48: 2009/7/24 Alexander Belchenko <bialix@xxxxxxx>: The general idea was that people would be more confused when "bzr push" didn't push what they thought they were pushing (I forgot to commit, etc), rather than having to supply a new argument when they really did want to push something out of the ordinary. There was also a strong push from MySQL. I don't know if they wanted it to be the default, they *definitely* wanted to be able to have it as the default for some people. (push_strict=True). As one of the reoccurring issues for MySQL was people pushing and not realizing that they had not committed. (I think some of this stemmed from using BK which automatically commits when you 'merge', while we require it as a separate step.) I went to the similar conclusion about this option, but I still think this change has introduced too much penalty to existing experienced bzr users, and we have to pay this price for the sake of newbies safety. I'm not agreed with such price somewhere deep inside me. I too thought it was a good idea, but I'd be prepared to change it now. Robert posted before that this is probably a case where we should notify people and make it easy to fix their mistake (by committing and pushing again), rather than blocking it. So I'd like a patch that makes it just warn unless --strict is given, and no warning at all if --quiet is given. I cc'd GuilhemB in case he wants to comment. Thanks for letting me know. From the MySQL side, I confirm I definitely wanted a way (by default or not) to prevent pushes if there are uncommitted changes. It's not only about newbies; the problem can catch experienced users as well, for example this, at late night: - change code - run tests - tests ok, commit - ahah, should also run an extra test suite - extra test suite fails - fix code - extra test suite passes, finally - push and then we have pushed some broken code, because forgot to commit the final code change. A push triggers automated tests on multiple machines (kind of buildbot), so a broken code push is annoying. I'm happy that --strict is on by default, but as other users seem to have different opinions, which may be very valid, I'll defer to Canonical folks :-) If it's made non-default then I'll advise my colleagues to put it in their bazaar.conf.

Next Message by Date: click to view message preview

Automatic setting of --author when committing a merge

-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, I think it would be a good idea if Bazaar would set the --author option for each author of a revision in a pending merge when committing (or at least it could be an option to the commit command to do so). That way when PQM, for example, commits on behalf of a number of authors then the authors fields on the committed revision would be correct. What do you think? Cheers, Nick -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkpi02AACgkQm69gNgxDuSHXeQCfXynpuPNaOZdzSQ40VWZhFhTX yasAn1UNFvTa2wlMsNBfaIeuMRU/7wKw =Ew8w -----END PGP SIGNATURE-----

Previous Message by Thread: click to view message preview

1.17 installation problems on OS X 10.5

Dear all, I'm having an issue with upgrading from bazaar 1.16.1 to 1.17 on OS X 10.5.7 - I'm installing bazaar from your download page (sorry, but I prefer to avoid using fink or macports). Currently, you only have 1.16.1 listed against 10.5 on your download page. If I chose either of the python offerings for an install of bazaar 1.17 from the OS X 10.4 listings, installation fails telling me I should upgrade my python to 2.5. Here's the output regarding my python versions: $ which python /usr/local/bin/python $ python --version Python 2.6.1 and if I stick to the Mac installed versions of python: $ ls -l /System/Library/Frameworks/Python.framework/Versions total 8 drwxr-xr-x 7 root wheel 238 31 Oct 2007 2.3/ drwxr-xr-x 11 root wheel 374 20 Jul 20:38 2.5/ lrwxr-xr-x 1 root wheel 3 31 Oct 2007 Current@ -> 2.5 As you can see, I clearly have (via either route) at least python 2.5 installed. Looking in the logs does not reveal anything untoward regarding attempts at installation. Any help in progressing the issue is very much appreciated, Carl.

Next Message by Thread: click to view message preview

Re: Where is "all" data stored; so which .bzr dire may be removed?

On Thu, Jul 30, 2009 at 07:41:35PM +0200 I heard the voice of ALbert Mietus, and lo! it spake thus: > > My first question: does the shared-.bzr dir also holds "all". That question can't really be answered; it's too broad (or too narrow). All bzr data goes in a bzrdir (.bzr). Fundamentally, there are 3 types of bzr entities: 1) There are revisions, the individual snapshots in the history. These go in a repository. 2) There are branches, which are basically pointers into the revision space, saying "these are the bits of history in this branch". 3) There are working trees, which are where you edit files and do stuff. The bzr data here is meta-information like "what the base revision is" and "how the unaltered files look" (speaking very roughly). (3) corresponds to the CVS/ directories in a CVS checkout, except that there's only one at the root of the tree, rather than one in each directory. (1) and (2) roughly correspond to $CVSROOT and entities within it. The primary difference to grasp from CVS is that the branch is the primary entity to be concerned with. > If so, then I should be allowed to delete all other .bzr dirs in > subdirs of that shared repository Generally, you probably shouldn't delete a .bzr dir unless you're also deleting the dir around it. > If so, how can I re-create those brances. Deleting a _branch_ by itself doesn't destroy [much] data; the revisions are still in the repository. Of course, if it's a standalone branch, the repository is in the same .bzr/ dir, so you'd've thrown that away too. If you still know the head rev, you can recreate much of the branch state and move forward. If you don't, there may be various ways to guess. > Meaning: get a working dir (the lastest version in that branch). Getting a working dir _is_ a distinct operation from getting a branch, though UI-wise they often happen at the same time. In the case of your particular layout here: > .../TryOut/.bzr This is likely to be a shared repository. All the branches within use this for their revision storage. Think of it as a giant bucket, with all the individual revisions floating around in it without any necessary structure. > .../TryOut/branches/Apple_Darkroom/.bzr > .../TryOut/branches/Apple_Goldenrod/.bzr > .../TryOut/branches/HEAD/.bzr These are three branches. HEAD would be the CVS head, and the other two would be from like-named CVS branches. If either or both of them has been merged into HEAD (which couldn't have been translated from CVS, revision-wise, but the file contents at least would be), they wouldn't have any information that HEAD wouldn't already have (technically, being a branch, HEAD doesn't _have_ any information, it just _points to_ some in the repository). But if not, they don't, so would need to be individually preserved. > .../TryOut/tags/GAM20071219/.bzr > .../TryOut/tags/GAM20080201/.bzr These are translated from CVS tags, but (due to the way cvsps-import works) are actually also bzr branches, with the head rev of each branch being the revision that the tag actually applies to (insert here necessary caevets about the actual situations CVS creates). This is sorta the same thing that SVN does with its "tags", which is wht cvsps-import sets things up like this. There's no reason these couldn't be actual tags in the branches that have those revs though, other than "cvsps-import doesn't do that". You could add them manually by matching up revids (not a big deal since there's only two). What I would do is 'branch' out the dirs from the cvsps-import--created repository into my own workspace (possibly with a shared repo there if necessary) and use them from there going forward. How you lay out the branches in that workspace is all up to you. Then I either delete or tar up the cvsps-import repo after I'm done. That's just personal preference, however; you could move the whole thing (TryOut/) into place if it's not already and work in there, I just prefer treating it as a temporary staging area for the translation. -- Matthew Fuller (MF4839) | fullermd@xxxxxxxxxxxxxxx Systems/Network Administrator | http://www.over-yonder.net/~fullermd/ On the Internet, nobody can hear you scream.
Sign up for updates to this mailing list. email:
Loading Comments...
Home | News | Patents | Sitemap | FAQ | advertise

Advertising by