简体   繁体   中英

Trouble pushing to origin after local hard reset

I recently did a hard reset of my local git repository: In other words I reset it to an earlier point in time. Now when I try to push up to the origin it tells me that it can't because the origin contains work of a later date than my repository. This makes sense, but I don't care about the work the origin has after my local repository.

If I first pull , which is what I am told to do, I presume that my local HEAD will then become whatever the origin HEAD was, ie with the additional work and my hard reset will be for nought.

How should I proceed here? To recap, I don't care about the additional later work on the origin, but do care about the extra work on the local done after the hard reset.

I am beginning to think that hard resets are not a great idea.

You can push --force to override the current HEAD of the origin , even if your local branch is not a descendant of it.

However: You should be aware of the consequences: Other developers working on the same repository now cannot easily pull in the changes, but have to reset / rebase to the origin. Using forced pushes / rewriting pushed history is bad and should be avoided whenever possible.

See also another answer here on StackOverflow on the dangers of forced pushes: How to properly force a Git Push?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM