{"thread":{"id":"14121","subject":"Re: why is git destructive by default? (i suggest it not be!)","startedAt":"2008-06-24T12:21:22Z","lastAt":"2008-06-24T12:21:22Z","messageCount":1,"participants":["Olivier Galibert"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"80884","messageId":"20080624122122.GA57848@dspnet.fr.eu.org","threadId":"14121","inReplyTo":null,"subject":"Re: why is git destructive by default? (i suggest it not be!)","fromName":"Olivier Galibert","fromEmail":"galibert@pobox.com","sentAt":"2008-06-24T12:21:22Z","receivedAt":"2008-06-24T12:21:22Z","isPatch":false,"sender":{"key":"galibert@pobox.com","avatar":null},"body":"On Tue, Jun 24, 2008 at 11:29:43AM -0000, David Jeske wrote:\n> -- Jakub Narebski wrote:\n> > If they are using '-f', i.e. force, they should know and be sure what\n> > they are doing; it is not much different from 'rm -f *'.\n> \n> Sure, no problem. I don't want the ability to \"rm -f *\". I'm raising my hand\n> and saying \"I don't want the power to do these things, so just turn off all the\n> git commands that could be destructive and give me an alternate way to do the\n> workflows I need to do\". Just like a normal user on a unix machine doesn't run\n> around with the power to rm -f /etc all the time, even though they may be able\n> to su to root.\n\nBut you still have the power to /bin/rm -rf ~, which tends to have\nworse results.  The root/user separation just tries to protect the\nsystem's integrity from the user.  This is similar to git, whch tries\nto protect the repository's integrity, which is not the same thing as\nthe contents.\n\n--force exists because it is sometimes useful.  It you block it behind\nsome config setting, whoever is concerned will just change the config\nwhen he needs the command and never change it back.  And windows, fsck\nand other things of the kind pretty much ruined the efficiency of\nconfirmations before dangerous/destructive operations.  So there isn't\nmuch left beside engaging your brain before using --force on a\ncommand.\n\n  OG.\n"}]}