Hello, I have a question to use bazaar:
I'm working on a custom branch in a launchpad team, I'm owner. I have a local repository, using like:
*bzr merge from Inkscape trunk *?bzr resolve *bzr commit -m "Update to trunk" *change code in my local branch.. *bzr commit -m "Some changes to branch" *bzr push to the branch in the team
After now, never have problems but now there is more people working on, and I want to know whats the way to be sync.
For example if I merge from the team like this: *other user PUSH some code to the branch in the team *bzr merge from branch in the team *bzr commit -m "Adding other user updates" *bzr push to the branch in the team This remove the other user push/es and be replaced well, but for my user, removing other user pushes. I think this is wrong.
Any body know a good way to archive ok? Thanks in advance, and sorry if not enought clear.
2014-03-11 0:50 GMT+01:00 Jabiertxo Arraiza Cenoz <jabier.arraiza@...2893...>:
Hello, I have a question to use bazaar:
I'm working on a custom branch in a launchpad team, I'm owner. I have a local repository, using like:
*bzr merge from Inkscape trunk *?bzr resolve *bzr commit -m "Update to trunk" *change code in my local branch.. *bzr commit -m "Some changes to branch" *bzr push to the branch in the team
After now, never have problems but now there is more people working on, and I want to know whats the way to be sync.
For example if I merge from the team like this: *other user PUSH some code to the branch in the team *bzr merge from branch in the team *bzr commit -m "Adding other user updates" *bzr push to the branch in the team This remove the other user push/es and be replaced well, but for my user, removing other user pushes. I think this is wrong.
It is not removing the pushes, it is just changing the revision numbers so that the other users' pushes are in subrevisions.
Any body know a good way to archive ok? Thanks in advance, and sorry if not enought clear.
If you want to prevent changes in revision numbers, use this:
bzr config -d lp:path/to/branch append_revisions_only=True
However if you set this, you won't be able to merge other users' changes and then push. Use this instead:
bzr checkout lp:path/to/branch working_dir <-- only the first time cd working_dir bzr update <-- after the first time bzr merge <path to your working tree> bzr commit
Another option - you need the "rebase" or "rewrite" plugin:
bzr pull bzr rebase bzr push
(PS: If anyone knows how to merge without having a checkout of the merge target, I'd like to know)
Regards, Krzysztof
Em Ter, 2014-03-11 às 01:21 +0100, Krzysztof Kosiński escreveu:
However if you set this, you won't be able to merge other users' changes and then push. Use this instead:
bzr checkout lp:path/to/branch working_dir <-- only the first time cd working_dir bzr update <-- after the first time bzr merge <path to your working tree> bzr commit
Actually, this text-driven tutorial is confusing. An ascii cast is way more user friendly.
I created a playground repo to expose your idea, but end up not working: https://asciinema.org/a/8096
Some missing bazaar feature. Anyway, ascii cast is an interesting way to explain these workflows.
2014-03-11 2:13 GMT+01:00 Vinícius dos Santos Oliveira <vini.ipsmaker@...400...>:
Actually, this text-driven tutorial is confusing. An ascii cast is way more user friendly.
I created a playground repo to expose your idea, but end up not working: https://asciinema.org/a/8096
Some missing bazaar feature. Anyway, ascii cast is an interesting way to explain these workflows.
I think the error message was fairly clear. You can't merge into a branch that doesn't have any revisions. It should work OK with a branch that contains something.
Regards, Krzysztof
Em Ter, 2014-03-11 às 03:51 +0100, Krzysztof Kosiński escreveu:
I think the error message was fairly clear. You can't merge into a branch that doesn't have any revisions. It should work OK with a branch that contains something.
Well, not wanting to turn this into a flame war. I just wanted to share an interesting service to communicate workflows (where not only the order, but also the context of the command matters such as the working dir and so on).
But... I thought that the message was clear until I've read your email, because it seems you got wrong. Both of my repos contained commits. What caused the error was that they had no ancestors in common (both started in "commit 0"). It was just a test, then I didn't think more than one commit would be needed (they even weren't conflicting). And the messa wasn't clear at all.
On Mon, 2014-03-10 at 23:56 -0300, Vinícius dos Santos Oliveira wrote:
It was just a test, then I didn't think more than one commit would be needed (they even weren't conflicting). And the messa wasn't clear at all.
No repository systems have yet advanced to the point of being able to tell users sensible things. Git is the same with it's obtuse and sometimes down right mad ramblings when things go wrong.
We live in hope.
Martin,
2014-03-11 3:56 GMT+01:00 Vinícius dos Santos Oliveira <vini.ipsmaker@...400...>:
But... I thought that the message was clear until I've read your email, because it seems you got wrong. Both of my repos contained commits. What caused the error was that they had no ancestors in common (both started in "commit 0"). It was just a test, then I didn't think more than one commit would be needed (they even weren't conflicting). And the messa wasn't clear at all.
I wasn't aware of that. Sounds like the message is misleading.
I can make an ascii-cast of merging using a checkout if someone is interested.
Regards, Krzysztof
Em Ter, 2014-03-11 às 04:08 +0100, Krzysztof Kosiński escreveu:
I can make an ascii-cast of merging using a checkout if someone is interested.
If I understood correctly, the approach to "few users working" with checkout was to mirror svn behaviour of only commit/push if you know that your version is updated.
If I didn't understand correctly, then I'd like to see an ascii cast (or I can read a man page later, but a warn that I didn't get right would still be desirable).
2014-03-11 4:20 GMT+01:00 Vinícius dos Santos Oliveira <vini.ipsmaker@...400...>:
Em Ter, 2014-03-11 às 04:08 +0100, Krzysztof Kosiński escreveu:
I can make an ascii-cast of merging using a checkout if someone is interested.
If I understood correctly, the approach to "few users working" with checkout was to mirror svn behaviour of only commit/push if you know that your version is updated.
bzr will not allow you to commit to a remote branch if your version is not updated. Otherwise you are correct.
Regards, Krzysztof
participants (4)
-
Jabiertxo Arraiza Cenoz
-
Krzysztof Kosiński
-
Martin Owens
-
Vinícius dos Santos Oliveira