Thread (2 messages) flat view 2 messages, 2 authors, 2016-06-15

Re: What's cooking in git.git (Dec 2008, #04; Mon, 29)

From: Christian Couder <hidden>
Date: 2016-06-15 22:45:52

Le samedi 3 janvier 2009, Junio C Hamano a écrit :
Christian Couder [off-list ref] writes:
quoted
Le mardi 30 décembre 2008, Junio C Hamano a écrit :
quoted
* cc/bisect-replace (Mon Nov 24 22:20:30 2008 +0100) 9 commits
 - bisect: add "--no-replace" option to bisect without using replace
   refs
 - rev-list: make it possible to disable replacing using "--no-
   bisect-replace"
 - bisect: use "--bisect-replace" options when checking merge bases
 - merge-base: add "--bisect-replace" option to use fixed up revs
 - commit: add "bisect_replace_all" prototype to "commit.h"
 - rev-list: add "--bisect-replace" to list revisions with fixed up
   history
 - Documentation: add "git bisect replace" documentation
 - bisect: add test cases for "git bisect replace"
 - bisect: add "git bisect replace" subcommand

I think a mechanism like this should be added to replace grafts,
The problem with replacing grafts is that a graft can specify many
parents for one commit while a ref associates only one object to a
name.
Sorry, maybe I misunderstood your implementation.  What I thought we
discussed during GitTogether was to write out the object name of the
replacement object in refs/replace/<sha1>.

When the caller asks read_sha1_file() for an object whose object name is
<sha1>, you see if there is refs/replace/<sha1> in the repository, and
read the ref to learn the object name of the object that replaces it. 
And you return that as if it is the original object.
Ok. When I first implemented "bisect replace" I saw that I could reuse the 
graft fix-up mechanism. And as you talked about replacing grafts, I thought 
that you wanted the implementation to use that mechanism instead of adding 
a different one.

But I agree that it may be more powerfull and generic to replace objects the 
way you describe it. So I will work on that.

Thanks,
Christian.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help