Re: Commited to wrong branch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Martin,

Got as far as applying the temporary patch and I now get a load of...

Reversed (or previously applied) patch detected!  Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file
theme/onepointnine/local.css.rej
The next patch would create the file theme/onepointnine/local.css,

funnily I didn't think that file had anything to do with it, but when
I changed branched I got

T	theme/onepointnine/local.css

Not sure what the T means :-(

H.

2009/9/15 Martin Langhoff <martin.langhoff@xxxxxxxxx>:
> On Tue, Sep 15, 2009 at 2:10 PM, Howard Miller
> <howard@xxxxxxxxxxxxxxxxxxx> wrote:
>> Martin,
>>
>> Looked at gitk - yes there is definitely one more commit still on the
>> current (wrong) branch.
>>
>> I deleted the offending file and have now successfully switched to the
>> other (correct) branch.
>
> ok!
>
> so you have
>
> A - The commit you undid, and have in the temp patch. Note that this
> patch file is missing the file you've rm'd.
>
> B - A commit you haven't "undone" on the "wrong" branch X.
>
>  and you are on branch Y
>
> so now...
>
> 1 - git format-patch Y^..Y  # will export that patch B into a file for you.
> 2 - git am 0001-whatever-the-name-of-the-file.txt # patch B
>    this may need conflict resolution - read the notes it prints! If
> it refuses to apply the patch, do "git am --skip" to indicate you
> won't use git-am no more for this, and try applying it with the patch
> utility.
> 3 - patch -p1 < your-patch-A.patch
> 4 - find and readd the file you rm'd earlier -- if you don't have
> another copy, we can get it from git reflog but that'll take extra
> steps :-)
> 5 - git commit # you're committing your patch A here
>
> Now, review with gitk to see that you have what you want to have
> there. If it's all ok...
>
>  6 - git checkout X
>  7 - git reset --hard # unstich that last stray commit
>   --
>
> hope the above helps. Git pros will see that the process could be much
> shorter :-) I chose this specific path because in exporting your
> patches and applying them again you can see each step.
>
> If we were to start again, and the branches are reasonably close to
> eachother (not 19_STABLE vs cvshead :-) ) then you can say
>
>  - X has 2 bad commits that belong to Y, then
>  1 - gitk X & # open gitk to visualise the commits, send it to the background
>  2 - git checkout Y
>  3 - git cherry-pick X^ # takes the next-to-last commit from X and
> tries to apply it here - conflict resolution may be needed
>  4 - git cherry-pick X # same with the very last commit on X
>  5 - gitk # check that is all as you want it
>  6 - git checkout X
>  7 - git reset --hard X^^ # "rewind 2 commits"
>
> hth,
>
>
>
> m
> --
>  martin.langhoff@xxxxxxxxx
>  martin@xxxxxxxxxx -- School Server Architect
>  - ask interesting questions
>  - don't get distracted with shiny stuff  - working code first
>  - http://wiki.laptop.org/go/User:Martinlanghoff
> --
> 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
>
--
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

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]