Joakim Tjernlund <joakim.tjernlund@xxxxxxxxxxxx> wrote: > BTW this does not work either: > > git reset --hard HEAD^ > git push -f ssh://devsrv/var/git/os2kernel.git +master:master > updating 'refs/heads/master' > from 9c344d18d01221c8f25080cb58910e6b09efbf55 > to 5761a9e5924b34615c748fba2dcb977ed04c1243 > Generating pack... > Done counting 0 objects. > Writing 0 objects... > Total 0 (delta 0), reused 0 (delta 0) > error: denying non-fast forward refs/heads/master (you should pull first) > ng refs/heads/master non-fast forward > error: failed to push to 'ssh://devsrv/var/git/os2kernel.git' > > I thought the + in +master:master and the -f option should let me > do that. Yes, but its only on the client side. See when we do a push the local client side determines if the push is going to be a fast-forward or not. If it isn't then the git-push client aborts before it even uploads data to the remote side. The --force or + can be used to make the client side skip this check and just plow forward anyway. But the remote side can also veto a non-fast-forward update. By default it refuses to allow such updates as they can orphan commits (and thus potentially lose important work). See the config option receive.denyNonFastForwards; you may want to set this to true in the remote side's config file. -- Shawn. - 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