On Sun, Feb 10, 2008 at 07:18:24PM +0100, Wincent Colaiuta wrote: > I'm all for protecting the user from nasty surprises (like "git clean"; > "clean" doesn't sound nearly as destructive as it can actually turn out to > be) but I don't think that anyone typing "git push" can fairly claim to be > surprised when Git goes ahead and, er, pushes something. I don't think people are surprised that "git push" pushes something. I think they are surprised that "git push" makes changes based on non-HEAD branches (which may or may not be in a useful state). Are there any other git commands which use non-HEAD branches that have not been explicitly mentioned by the user? I can think only of query-type commands (like show-branch, or describe) that are non-state-changing. I think what is problematic here is that push makes changes based on state that is irrelevant to most git actions. Thus you have things like Martin's complaint: "what, why are you rejecting branch foo? I haven't even worked on that in months." He is expected to either remember the state of all branches in his repository, or to keep it extremely tidy (either deleting branches immediately after use, or keeping them up to date with upstream, which is extra useless work from his perspective). -Peff - 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