Re: About detached heads
Linus Torvalds <torvalds@linux-foundation.org> writes:
Show 29 quoted lines
> On Fri, 14 Mar 2008, Bjorn Steinbrink wrote:
>> On 2008.03.14 10:53:25 -0700, Linus Torvalds wrote:
>>>
>>> So the "core git" way to do it is to literally just do
>>>
>>> git read-tree -u -m 3
>>> git commit
>>>
>>> (or use "--reset" instead of "-m" if you want to do it even in the
>>> presense unmerged entries).
>>>
>>
>> Hm, that's just squashing revert commit. Squashing can be done via:
>> git reset --soft HEAD~5 # Or wherever your squashed commit should start
>> git commit -m "Squashed from HEAD~5 onwards"
>>
>> Now the "revert" version of that:
>> git reset --hard HEAD~5 # Go back to the state that we want
>> git reset --soft ORIG_HEAD # Move HEAD back, but keep the index as is
>> git commit -m "Back at the state of HEAD~5"
>>
>> AFAICT that should have the same advantages as using read-tree, but
>> doesn't feel so low-level :-)
>
> Umm. The low-level one is a *lot* easier to understand than your
> "high-level" one, wouldn't you say?
>
> And when the low-level plumbing commands are easier, are they not then
> better porcelain?
AFAIK the porcelain equivalent to plumbing
git read-tree -u -m 3
is just
git checkout 3 -- .
--
Jakub Narebski
Poland
ShadeHawk on #git