On Fri, Aug 03, 2007 at 01:50:10PM -0400, Pavel Roskin wrote: > Hello! > > I was recently disappointed to learn that one of the Linux drivers > (bcm43xx_mac80211, to be precise) switched from git to quilt. I asked > whether StGIT was considered, a discussion followed, and I think the key > points need to be shared with StGIT developers. I'll add some of my > ideas to the mix. You might also ask them if they considered "guilt", which uses text-based patches. It's a lot easier to use, and if they really want quilt-like functionality, "guilt" will provide it. My main reason for avoiding StGIT is the fact that at least in the past, I've found it very fragile when I forget and use "git checkout" instead of "stg branch" to switch between branches. The fact that sometimes you have to use the StGit variant of basic git commands has always struck me as confusing, and then recovering when things get screwed can be exciting. Usually it's when I start having to cut and paste SHA1 hashes and running diffs to recreate my patch series after things get screwed is usually about the time when I wonder why I tried using StGIT again. (Don't get me wrong; I'm sure I did something really stupid, and wrong, that caused things to get screwed up. My complaint is that when I do something stupid, StGIT isn't robust and is painful to recover from.) That's why I like guilt; it doesn't require that you use alternate stg commands for manipulating branches, and since it maintains an external set of text patches, recovering is much easier; worst case I can just do a "git reset --hard" and then follow it up with a guilt push -a. And because it's so stupid simple, it's much rarer that something goes seriously wrong that requires me to use a recovery procedure in the first place. Editing patch headers are also a lot easier with guilt; you can just go ahead and edit them all, and then you can fresh them in git by doing a "guilt pop -a; guilt push -a". Since it's not using a git-based storage, it doesn't have to rewrite the whole patch stack when you modify a single patch header; you can edit a whole bunch of text headers and then refresh the git commit series just once. Of course, that's just my preference; others may find StGIT more convenient, or folks may find the new rebase -i to be better yet. YMMV. - Ted - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html