[llvm-commits] Fwd: [llvm] r48822 - in /llvm/trunk: include/llvm/CodeGen/ScheduleDAG.h include/llvm/CodeGen/SelectionDAGNodes.h lib/CodeGen/SelectionDAG/DAGCombiner.cpp lib/CodeGen/SelectionDAG/LegalizeDAG.cpp lib/CodeGen/SelectionDAG/LegalizeTypes.c
Christopher Lamb
christopher.lamb at gmail.com
Sat Apr 5 12:19:44 PDT 2008
On Apr 4, 2008, at 8:39 AM, Roman Levenstein wrote:
> ---------- Forwarded message ----------
> From: Roman Levenstein <romix.llvm at googlemail.com>
> Date: 04.04.2008 16:28
> Subject: Re: [llvm-commits] [llvm] r48822 - in /llvm/trunk:
> include/llvm/CodeGen/ScheduleDAG.h
> include/llvm/CodeGen/SelectionDAGNodes.h
> lib/CodeGen/SelectionDAG/DAGCombiner.cpp
> lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
> lib/CodeGen/SelectionDAG/LegalizeTypes.cp
> To: Duncan Sands <baldrick at free.fr>
>
>
> Hi Duncan,
>
> 2008/4/4, Duncan Sands <baldrick at free.fr>:
>
>> Hi,
>>
>>
>>> I have a stupid question regarding this. My source tree is newer
>>> than
>>> that revision and some other unrelated things are changed in the
>>> affected files already. Therefore I cannot so simply commit the fix.
>>> How can I do that? Probably I can edit the backed-out patch, but how
>>> do I commit this patch file to the SVN? Is it possible to commit
>>> the
>>> file containing a patch, i.e. without SVN analyzing the source files
>>> on my side?
>>
>>
>> do
>> svn update
>> This will auto-merge in the upstream changes. If there is a
>> conflict
>> you will see letter C and will need to fix up the conflict by
>> hand-editing
>> (the conflicted parts are marked with <<<< etc in the file).
>> Once you
>> have fixed up the conflict, you can do
>> svn resolved file_name
>> If everything seems fine, you can do
>> svn commit
>>
>> The basic rule is that you can't commit unless you have the
>> latest version
>> of the file; using svn update makes sure you have the latest
>> version.
>
>
> Thanks for your comment. But I think I did not explained my problem
> in a proper way. The original commit was approved and was
> implementing
> a certain way of handling use lists for SDNode objects. Then this
> commit was reverted by Evan, because Dan has found some issues with
> this patch. But in the mean time I have changed a lot in the
> implementation of the use-lists in my local copy.
>
> I know how to fix the original commit. Evan asked me to fix it and to
> commit again this fixed OLD version of my use-lists patch. But I
> don't
> have this version any more in my local copy, since I completely
> changed it. I only have my old commit in a form of a patch file. My
> question is: How can I commit the OLD version fixed by me? I hope the
> situation is more clear now?
This problem is a bit of a pain to deal with. Here's what I normally do:
save off my current changes:
svn diff > current_changes.patch
revert the tree:
find llvm/ | xargs svn revert
update to latest:
svn update
apply the old patch:
patch -p0 < old_changes.patch
resolve conflicts, modify files, build, test. If everything works:
svn commit
then patch my latest working state back in:
patch -p0 < current_changes.patch
I suppose you could get around some of this by maintaining two
working copies, but this is one of those annoying things about this
style of SCM.
--
Christopher Lamb
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20080405/7c1010fb/attachment.html>
More information about the llvm-commits
mailing list