Kevin Daudt <me@xxxxxxxxx> writes: > On Mon, Mar 14, 2016 at 12:03:33AM +0530, Sidhant Sharma wrote: >> >> >> >> Other than this, I also tried to expand the list of potentially destructive >> commands and updated the list as follows (additions in brackets): >> >> * git rebase [ git pull --rebase ] >> * git reset --hard >> * git clean -f >> * git gc --prune=now --aggressive >> * git push -f [ git push <remote> :<branch>, git push <remote> +<branch> ] >> * [ git branch -D ] >> >> Are these additions appropriate? What other commands should be included? > > git checkout [ref] <file> is destructive too if it would overwrite an > uncomitted change. Obviously. As that was designed to be the way to get rid of unsuccessful/unwanted edit in the working tree. "git add <file>" is destructive if it overwrites the index entry that holds contents you have not committed. "git rm [--cached] <file>" is destructive, too. I think "git checkout [<ref>] <file>" falls into the same category. -- 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