On Tue, 9 Sep 2008, Jeff King wrote:Well, that is why I was carefull to say that "origin <rev1> <rev2>" (or 'changeset', or 'cset') means that tree state for given commit is created out of parent commit (or parent commits in the case of merge) and of (<rev2> - <rev1>) patch. This is a bit of enhancement to "parent <rev>" meaning that tree state for current commit is derived from tree state of <rev>. This is nice generalization... I'm also not all convinced that 'cousin'/'origin'/'changeset'/'cset' header is a good idea. I only tried to steer discussion in good direction if it is somewhat a good idea. First, if the only goal would be to add extra links (extra edges) to [graphical] history viewer, then full sha-1 of a commit which can be recorded in commit message for cherry-picks and reverts should be enough. It does mean parsing commit message, and all possibilities for mistake which are connected to using conventions in free-form part of commit object; on the other hand it is not _that_ critical. If however 'origin' links are more (perhaps only a tiny bit more), for example discussed "weak" links... then I'm not sure if the tradeoffs are worth it. First, if it is full connectivity like in 'parent' header case, then a) why not use 'parent' anyway, b) it pins the history indefinitely long. Second, if it is "weak" link, i.e. local protect it on prune, then a) there are problems with transferring the data, and protecting links on transfer, as somewhere in the middle or at the end there might be repository which uses older git (backwards compatibility strikes again), b) git in many, many places assumes that object is valid if it passes, and all objects linked to from object are valid; we would have either use some kind of separate 'not strictly checked' packfile/storage, or have grafts-like thingy. So I'm not sure if 'origin' links are worth the trouble. About much, much earlier "prior" link discussion: I think the discussion about "prior" header link was done before reflogs, or at least before reflogs got turned on by default. -- Jakub Narebski Poland -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
| Jesse Barnes | Re: [stable] [BUG][PATCH] cpqphp: fix kernel NULL pointer dereference |
| Greg KH | [003/136] p54usb: add Zcomax XG-705A usbid |
| Magnus Damm | [PATCH 03/07] ARM: Use shared GIC entry macros on Realview |
| Oliver Neukum | Re: [Bug #13682] The webcam stopped working when upgrading from 2.6.29 to 2.6.30 |
| Martin Schwidefsky | Re: [PATCH] optimized ktime_get[_ts] for GENERIC_TIME=y |
git: | |
| Junio C Hamano | Re: Some advanced index playing |
| Jeff King | Re: confusion over the new branch and merge config |
| Robin Rosenberg | Re: cvs2svn conversion directly to git ready for experimentation |
| Linus Torvalds | git binary size... |
| Ævar Arnfjörð Bjarmason | Re: Challenge with Git-Bash |
