Not logged inOpenClonk Forum
Up Topic Development / Developer's Corner / The PlrCtrl branch
- - By Günther [de] Date 2009-10-12 15:07
Half of it is merge commits, and some of those merge commits are bad merges. I have rebased the branch on top of the current default branch, and will push that later today for consideration as a replacement. A nice linear history is easier to follow.
Reply
Parent - By Sven2 [de] Date 2009-10-12 15:32
I think PlrCtrl as it is can replace the current main branch. Mouse control is not implemented yet and you have to set the correct control set in your player settings. But it is playable; and as the interface changed, much scripting work done for the old control mode would have to be re-ported.
Parent - - By Newton [de] Date 2009-10-12 16:56
I am currently working on the branch and also took care of the errors of the bad merge... I hope if you push that later, it will not lead to me having to merge loads again. And please do not merge plrctrl into default just yet. I am not done with the new controls yet. Now it is hardly playable.
Parent - - By Sven2 [de] Date 2009-10-13 20:10
Please remember that while it's annoying to have current changes mess up the game, there's a lot of overhead involved in merging branches all the time (quite visible in the PlrCtrl branch). Besides, the main branch isn't much more playable anyway.
Parent - - By Newton [de] Date 2009-10-13 20:28
That's true. I am not against rebasing plrctrl into default, I am just skeptic about it. Nothing is more annoying for a content developer if the platform he is working on, does not work properly.
Parent - By Carli [de] Date 2009-10-13 21:20
Then, the content developer does not update the not-working part - he keeps his head
Parent - - By Günther [de] Date 2009-10-13 21:11
The right solution is to work on non-overlapping areas in different branches and only merge the branch once, at the end.
Reply
Parent - - By Clonk-Karl [us] Date 2009-10-13 22:34
And in the meanwhile I think it's OK to merge default into an experimental branch (because it sometimes happens that the latter needs a fix from default) as long as the default branch is required to always be in good shape (which it currently isn't, and maybe that's the source of the problem).
Reply
Parent - By Isilkor Date 2009-10-14 00:52 Edited 2009-10-14 00:55

> it's OK to merge default into an experimental branch


What isn't really ok IMO is merging own unpublished changes onto a branch. This should be rebased instead, so we don't have branch-commit-merge situations all the time. This might even be useful if the changeset has already been published on an external repository to keep our development history clean.

> which it currently isn't, and maybe that's the source of the problem


We should really get default back to working order poste-haste.
Reply
Parent - By Newton [de] Date 2009-10-13 12:39
I think the bad merges resulted from the confusion that was caused by this:
Sven did some changes to the plrctrl branch and merged it with an older default tip, committed it. I merged the plrctrl branch with a new default, committed it and pushed it. Sven pushed his changes+merge only after that. I merged my plrctrl branch into his plrctrl branch, committed and pushed it.
In the (my) last merge, KDiff was confused because of that and solved a few deltas automatically which should have been conflicts (that have to be solved manually). So, for the future, we know: If you merge+commit, always push after that immediately.

Which leads us to your rebase. Perhaps it is wiser to either push it now rather than later or not at all (rebase from another rev later). IMO, as stated above, PlrCtrl is not working (enough) to be rebased to the default branch. The bugs by the even actually almost-finished proplists and other changes in default are already annoying enough.
Parent - By Günther [de] Date 2009-10-13 14:06
Okay, a first version is now in my bitbucket repos: http://bitbucket.org/guenther/openclonk/
I think I'll fix up the branch markers, and maybe the dates, add the latest commits from the openclonk.org plrctrl branch, test the result, and push it to the openclonk.org default branch.
Reply
Parent - - By PeterW [de] Date 2009-10-14 02:09 Edited 2009-10-14 02:13
Okay, what does this mean? I guess merges are a bad thing... Therefore:
* If some branch exists only on your computer, you must rebase it.
* If the branch is also in a remote repository, on the other hand, push the merge immediately, because rebasing a merge will not be possible (or at least very, very messy).

Or did I get that wrong?
Parent - - By Isilkor Date 2009-10-14 03:24

> * If some branch exists only on your computer, you must rebase it.


You don't have to, but it makes for a cleaner history graph.
Reply
Parent - By Sven2 [us] Date 2009-10-14 20:58
That's nice and all, but the complicated merges and conflicts that mess up the history are of course those that happen in the PlrCtrl-branch, which is edited by many people and frequently needs new features from the main branch (Proplists, etc.). Noone gets confused by one-developer-branches that move on commit by commit and get backmerges from the main branch now and then.
Parent - - By PeterW [de] Date 2009-10-16 02:00 Edited 2009-10-16 02:04
I consider a clean graph to be essential for effective developing. I don't think we have to argue about the fact that these plrctrl-spaghetti-branches are /really/ hard to read?

I mean, there doesn't even seem to be a per-branch history view? :/
Parent - - By Isilkor Date 2009-10-16 02:51

> I mean, there doesn't even seem to be a per-branch history view? :/


Click the "Filter" button in TortoiseHG's history viewer, then choose the branch you want to see.
Reply
Parent - - By PeterW [de] Date 2009-10-17 16:57
Hm, I was talking about the web front-end. Haven't managed to run TortoiseHg under MacOS yet, so I'm using that mostly.
Parent - By Isilkor Date 2009-10-18 01:10
I'll look into it; poke me in IRC if I forget.
Reply
Up Topic Development / Developer's Corner / The PlrCtrl branch

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill