Quantcast

How to revert a merge?

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

How to revert a merge?

Pat Kusbel
I botched a merge and want to do redo it but I can't figure out how, can
someone point me in the right direction?

Here's what I have:

>hg parents
changeset:   177:28732b056d91
tag:         tip
user:        Pat Kusbel <xxx>
date:        Fri Jan 16 13:28:34 2009 -0700
summary:     change bus arbitration

changeset:   165:27f8c3e0a3f8
user:        Pat Kusbel <xxx>
date:        Fri Jan 09 16:25:54 2009 -0700
summary:     put the constraints back

<And the files I botched up in the merge>
hg status
M cpld\fpp_config_controller.v
M cpld\output\fpp_config_controller.pof
M fpga\output\supercard_hardware.sof
M fpga\supercard_hardware.qsf
M fpga\supercard_hardware.sdc
M fpga\supercard_top.v

So I'm trying to revert back to the tip so I can merge these 2 heads
together correctly

hg revert -r tip --all
reverting cpld\fpp_config_controller.v
reverting cpld\output\fpp_config_controller.pof
reverting fpga\output\supercard_hardware.sof
reverting fpga\supercard_hardware.qsf
reverting fpga\supercard_hardware.sdc
reverting fpga\supercard_top.v

But status show's as merged still:
hg status
M cpld\fpp_config_controller.v
M cpld\output\fpp_config_controller.pof
M fpga\output\supercard_hardware.sof
M fpga\supercard_hardware.qsf
M fpga\supercard_hardware.sdc
M fpga\supercard_top.v

and if I try to re-force a merge:
hg merge -f
abort: outstanding uncommitted merges

Can someone help me sew the foot back on that I just blew off?  :)

thanks!
-pk
_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How to revert a merge?

Steve Borho
On Fri, Jan 16, 2009 at 2:54 PM, Pat Kusbel <[hidden email]> wrote:
I botched a merge and want to do redo it but I can't figure out how, can
someone point me in the right direction?

Here's what I have:

>hg parents
changeset:   177:28732b056d91
tag:         tip
user:        Pat Kusbel <xxx>
date:        Fri Jan 16 13:28:34 2009 -0700
summary:     change bus arbitration

changeset:   165:27f8c3e0a3f8
user:        Pat Kusbel <xxx>
date:        Fri Jan 09 16:25:54 2009 -0700
summary:     put the constraints back

<And the files I botched up in the merge>
hg status
M cpld\fpp_config_controller.v
M cpld\output\fpp_config_controller.pof
M fpga\output\supercard_hardware.sof
M fpga\supercard_hardware.qsf
M fpga\supercard_hardware.sdc
M fpga\supercard_top.v

So I'm trying to revert back to the tip so I can merge these 2 heads
together correctly

hg revert -r tip --all
reverting cpld\fpp_config_controller.v
reverting cpld\output\fpp_config_controller.pof
reverting fpga\output\supercard_hardware.sof
reverting fpga\supercard_hardware.qsf
reverting fpga\supercard_hardware.sdc
reverting fpga\supercard_top.v

But status show's as merged still:
hg status
M cpld\fpp_config_controller.v
M cpld\output\fpp_config_controller.pof
M fpga\output\supercard_hardware.sof
M fpga\supercard_hardware.qsf
M fpga\supercard_hardware.sdc
M fpga\supercard_top.v

and if I try to re-force a merge:
hg merge -f
abort: outstanding uncommitted merges

Can someone help me sew the foot back on that I just blew off?  :)

To get back to a single parent you use hg update -C tip

In recent mercurial releases, you can also use the resolve command to restart merges.

--
Steve


_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: How to revert a merge?

Peter Hosey-3
In reply to this post by Pat Kusbel
On 2009-01-16, at 12:54, Pat Kusbel wrote:
> So I'm trying to revert back to the tip so I can merge these 2 heads  
> together correctly

Revert only throws away file changes (additions, deletions, and  
modifications).

The definition of a pending merge is that the working copy has two  
parents. Your WC has two parents; therefore, you have a pending merge.

The solution is to get back to one parent. You need a command that  
will change the parent of the WC to one and only one parent.

That command is update.

Note that you will need the -C (throw away all local changes) option;  
otherwise, update will refuse to do anything because you have a  
pending merge.

_______________________________________________
Mercurial mailing list
[hidden email]
http://selenic.com/mailman/listinfo/mercurial
Loading...