[petsc-dev] mecurial emergency
Satish Balay
balay at mcs.anl.gov
Sat Jun 26 10:19:00 CDT 2010
On Sat, 26 Jun 2010, Satish Balay wrote:
> On Sat, 26 Jun 2010, Barry Smith wrote:
>
> >
> > I need help. FAQ.html has "instructions" to fix this but the instructions are not complete enough: they say
> >
> > "Fixing this is complicated. Basically, you clone the repo
> > before you made head #2, then create the diff for the bad changeset
> > that made head #2. Apply it to the clone and checkin, then pull the
> > master.
> >
> > Now
> >
> > 1) how do I clone the repo before you made head #2?
> > 2) how do you create the diff for the bad changeset that made head # 2
> > 3) how do you apply it to the clone
> > 4) how do you checkin? Never heard of checkin in mecurial
> >
> > Please let me know this and I will also update the FAQ.
> >
> >
> >
> > [barry-smiths-macbook-pro:src/sys/totalview] barrysmith% hg merge
> > abort: outstanding uncommitted changes (use 'hg status' to list changes)
> >
> > [barry-smiths-macbook-pro:src/sys/totalview] barrysmith% hg commit
> > nothing changed
> >
> > [barry-smiths-macbook-pro:src/sys/totalview] barrysmith% hg status | head -5
> > ! src/ksp/ksp/examples/tutorials/ex1.c
>
> Looks like some files are deleted. Commit doesn't pick it up
> automatically. [unless 'hg rm' is used for the deletion]
>
> > ? !
> > ? #configure.log#
> > ? arch-g++.py
> > ? bin/#petscrun#
> > [
> >
> > [barry-smiths-macbook-pro:src/sys/totalview] barrysmith% hg heads
> > changeset: 16298:503f0f312436
> > tag: tip
> > parent: 16297:53f17d50e2f2
> > parent: 16296:90b6abac8d23
> > user: Victor Minden victorminden at gmail.com
> > date: Fri Jun 25 15:25:05 2010 -0500
> > description:
> > commit after merge
> >
> >
> > changeset: 16291:47055b889013
> > user: Barry Smith bsmith at mcs.anl.gov
> > date: Sat Jun 26 09:54:02 2010 -0500
> > files: src/docs/website/documentation/codemanagement.html src/docs/website/documentation/linearsolvertable.html src/docs/website/features/index.html src/docs/website/miscellaneous/acknwldg.html src/docs/website/miscellaneous/funding.html src/sys/makefile src/sys/totalview/makefile src/sys/totalview/tv_data_display.c src/sys/totalview/tv_data_display.h
> > description:
> > minor cleanup of docs
> > added totalview include and source for debugger
>
>
> I would do:
>
> hg update -C 47055b889013
> hg merge
> hg commit
I should have added: the above instructions are for the case where
local changes can be discarded. If I have to preserve the local
changes [depending upon how the changes were done] - I might use some
different process.
The following might work for almost all cases [since the merge is
interfering with the local changes - do the merge in a different/clean
repo]
i.e:
hg clone -r 47055b889013 petsc-dev petsc-dev-merge
cd petsc-dev-merge
hg pull [tip]
hg merge
hg commit
hg push [../petsc-dev]
cd ../petsc-dev
hg status
hg update or 'hg commit/hg merge' or somethig suitable for commiting local changes and merging
local changes
hg push [petsc.cs.iit.edu]
Satish
More information about the petsc-dev
mailing list