"Andrea Stacchiotti via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > From: Andrea Stacchiotti <andreastacchiotti@xxxxxxxxx> > > Using either the 1-arg or 2-args form of --force > it is possible to only move one branch at a time, > to HEAD and <arg2> respectively. If you are renaming (or "moving") a branch that is not checked out anywhere to a new name that is not in use, you do not even need to force. You can just do: git branch -m old new You are not moving branches without "-m". What you are doing is to point a branch A to point at a commit X with git branch A X Your proposed log message talks about "--force" too much; if you are creating a branch, you need "--force" only when the name you want to use is already taken. Pointing the branch tip to a commit is not inherently tied to "--force", but your description gives a false impression that you are adding a special feature when "--force" is used. The proposed log message needs rewritten. If there is not yet a branch A, you do not even need "--force" on this command line. Also take a special note that "X" does not have to be a branch name. It only has to resolve to a commit, so this is also valid: git branch [--force] A X~4 I can understand that it may appear to be handy to be able to set multiple branches at the same time with git branch A X~4 B X~3 C X~2 (* does not exist *) with or without "--force". If none of A, B, or C exist, they can be created from these three comits X~4, X~3, and X~2. Or you could propose a different syntax to create branches pointing at the same commit git branch A B C origin/master (* does not exist *) But either syntax to create multiple branches feel somewhat inadequate. What should happen to their associated configuration data like branch.A.remote and branch.B.merge? Should they all point at the same remote & a branch at the remote? How would that make having multiple of them useful?