To have origin/master
the same as master
:
git push -f origin master:master
Discussion on the parameters:
-f
is the force flag. Normally, some checks are being applied before it's allowed to push to a branch. The -f
flag turns off all checks.
origin
is the name of the remote where to push (you could have several remotes in one repo)
master:master
means: push my local branch master
to the remote branch master
. The general form is localbranch:remotebranch
. Knowing this is especially handy when you want to delete a branch on the remote: in that case, you push an empty local branch to the remote, thus deleting it: git push origin :remote_branch_to_be_deleted
A more elaborate description of the parameters could be found with man git-push
Opposite direction: If you want to throw away all your changes on master
and want to have it exactly the same as origin/master
:
git checkout master
git reset --hard origin/master
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…