Re: [PATCH v5 15/15] fast-export: don't handle uninteresting refs
- From
Felipe Contreras <felipe.contreras@gmail.com>
- Date
- Nov 22, 2012, 00:38 UTC
- Message-ID
- <CAMP44s1tkAZPza7skVza-qm5aQMur7CEbXZdE=RYYN2ZV2gwGw@mail.gmail.com>
- In-Reply-To
- <0F47AA24-F5B6-4197-8D74-6DD32E253856@quendi.de>
On Wed, Nov 21, 2012 at 11:30 PM, Max Horn <max@quendi.de> wrote:
> 2) Some are interfaces to foreign systems (bzr, hg, mediawiki, ...). They cannot use sha1s and must use marks (at least that is how I understand felipe's explanation). These tools use import combined with either export, or push. Examples: > > - git-remote-mediawiki: import, push, refspec > (its capabilities command also prints "list", but that seems to be a bug?)
I don't think remote mediawiki uses marks. They are strictly not needed by 'import' because the remote helper has full control over this operation. For example, in my remote helpers, I store the previous tip of the branches, so when git ask for 'import refs/heads/master', I only import the new commits. I named this file 'marks' anyway, but they are not marks for fast-import.
Show 6 quoted lines
> - git-remote-hg: import, export, refspec, import-marks, export-marks > (both the msysgit one and felipe's > - git-remote-bzr: import, push > (the one from https://github.com/lelutin/git-remote-bzr) > - git-remote-bzr (felipe's): import, export, refspec, *import-marks, *export-marks > (but why the * ?)
AFAIK both of my remote helpers have * in them, they are to denote they are required.
> Does that sound about right? If so, can somebody give me a hint when a type 2 helper would use "export" and when "push"?
I don't know when would be appropriate to use push, there's another git-remote-bzr that uses the bzr-git infrastructure, and uses push.
I picked export/import because I think they are the easiest to implement to get all the features, and should be efficient.
> And while I am at it: git-remote-helpers.txt does not mention the "export", "import-marks" and "export-marks" capabilities. Could somebody who knows what they do look into fixing that? Overall, that doc helped me a bit, but it is more a reference to somebody who already understands in detail how remote helpers work, and who just wants to look up some specific detail :-(. Some hints on when to implement which capabilities might be useful (similar to the "Tips and Tricks" section in git-fast-import.txt).
I've had problems finding out the right information, but I hope the git-remote-testgit I wrote in bash in less than 90 lines of code should give a pretty good idea of how the whole thing works.
> As it is, felipe's recent explanation on why he thinks marks are essential for remote-helpers (I assume he was only referring to type 2 helpers, though) was one of the most enlightening texts I read on the whole subject so far (then again, I am fairly new to this list, so I may have missed lots of past goodness). Anyway, it would be nice if this could be augmented by "somebody from the other camp" ;).
Wouldn't that be nice?
Cheers.
-- Felipe Contreras