Sorry for a way too slow response. This patch is probably the most unbaked one, so I'll start here. On Tue, Jul 26, 2011 at 3:39 AM, Jonathan Nieder <jrnieder@xxxxxxxxx> wrote: > Hi, > > Dmitry Ivankov wrote: > >> There are already a few options to determine svn revision from which >> a git commit imported with svn-fe came from. One is to make svn-fe >> write a git-svn-id: line to commit messages. Another one is to calc >> distance to the root commit. The former includes a "url" and is for >> git-svn compatibility, the latter is obviously slow and a bit fragile. >> >> $ svn-fe --notes_ref=notes_tree --ref=branch... >> will write annotations for branch commits to the notes_tree, each >> annotation is a simple "rN" string. Then these annotations can be >> viewed manually or used in incremental import to detect the last >> imported revision or to (re)create the import marks for further >> imports. > > Wouldn't another way be to look at the mark numbers? If marks file is absent (after clone for example), we'll need to look at notes anyway. If it is present and has a mark for latest revision we can hope it is valid and not regenerate it. If for some reason notes are lost and marks are present, it's possible to recreate notes from marks though, at least "rN" ones. > I am not sure I like this. svn-fe is supposed to be a generally > useful tool, and this patch hard-codes the particular note format rN. > If it is needed, maybe it would be possible to do something like > > --notes-ref=refs/notes/svn-rev --note='project foo, r%N' > > As a bonus, that would allow including more information using > different flag characters in the note in the future. Format string looks nice. While the whole notes thing may need more thinking. The main reason I wrote these in svn-fe is that it's more atomic to write note just after writing a commit. Also "checkpoint" will create notes for current status (and will write marks too, but weren't we going to consider notes as a primary data copy? it can be cloned for example). One more consideration is that copy-from information most likely will be written by svn-fe (nothing else knows it anyway) to some notes, so we'll need some notes writing in svn-fe. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html