El Sat, 17-07-2010 a las 14:17 +0000, Sascha Silbe escribió: > > To avoid polluting the history with spurious merges, people should > > rebase their patches on top of the remote branch before pushing them. > That only works if the changes are local - i.e. not if you've published them > on gitorious clone.
Yes. (one could maintain a separate clean tree for pushing, but things start to get complicated) > > I suspect that many irc floods are caused by activity on clones. Perhaps > > we could exclude those. > Perhaps we should for the time being. While clones contain interesting > activity as well (IMO even more interesting than mainline), I agree. > I have no idea how we could filter out the merge spam. I already > filter out the merge commits themselves for my clone, but filtering > the "merged" commits is beyond my git foo. Actually, it strikes me as odd that we see them at all. Consider a mainline tree with 3 commits: gitorious' mainline: a--b--c You clone, and add your commit 'D' locally sascha's mainline: a--b--c--D Meanwhhile, someone commits a few more patches to gitorious: gitorious' mainline: a--b--c--e--f Then you pull: sascha's mainline: a--b--c--e--f--* \---D--/ Now you have a merge on your tree (marked with '*'). If you push this to gitorious, what does the post-update script see? Head changed from the old location (f) to the new one (*). So, you should get only D... and the merge itself. A quick test on a merge point of the olpc-os-builder repository reveals that my theory is indeed correct: git rev-list 50219e37 ^f9a4be2e --pretty=oneline 50219e37770d55b7835633917a08d3afaacd16cd Merge branch 'master' of git+ssh://dev.laptop.org/git/projects/olpc-os-builder 41fae8d940a15d2bfc531773d5886fce77cc731a add usb_modeswitch, fixes #7172 fb74bbaf81fe2d095fbadefaea218fdb740e93f2 sugar_activity_group: configure activity group as systemwide by default So, maybe something is wrong with the oldrev passwd by the post-receive hook? To make sense of it, I added $oldrepo to the debug output of ciabot-post-receive.sh. Next time let's keep our eyes open. I also noticed an oddity: the scrpt was invoking "git-rev-list" instead of "git rev-list" with no hyphen. I'm puzzled on how it could have possibly worked before. -- // Bernie Innocenti - http://codewiz.org/ \X/ Sugar Labs - http://sugarlabs.org/ _______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel