arQon <arqon@xxxxxxx> writes: > ..., in the absence of either of those flags, git > WILL preserve the worktree by refusing to switch until that potentially- > harmful situation is resolved by the user. Perhaps you can prepare a documentation patch to make it clear that git WILL preserve the LOCAL CHANGES to the working tree? As it would already be clear to anybody reading this thread so far, local changes made to the working tree do not belong to any particular branch. They are floating on top, and it is up to the user what to do with these floating changes when they conflict with the differences between the branches you are switching across (i.e. you cannot switch so you need to clean up by either committing, stashing, or deciding not to switch and instead complete the work before you switch), and when they do not conflict with the differences between the branches you are switching across (i.e. you will carry them to the new working tree. It may be that you made these changes and then realized that they do not belong to the goal the current branch aims to achieve and that is why you decided to switch to another branch, in which case you do not have to do anything special in order to continue to work and complete it to commit to the switched branch. It may be that you made these changes but needed to tend to unrelated business on an unrelated branch and that is why you switched, in which case you would want to clear them away, which is exactly what stash was invented for). -- 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