git/list[1] front-page[2] threads[3] people[4] search[5] about
 

svn-fe status

From
Jonathan Nieder <jrnieder@gmail.com>
Date
Sep 25, 2010, 05:19 UTC
Message-ID
<20100925051926.GA19804@burratino>
In-Reply-To
<20100924065900.GA4666@burratino>
Jonathan Nieder wrote:
> Tomorrow I would like to re-roll the fast-import experiment
> so the svn-fe that understands deltas can get more attention
but I did not get as far as I would like.  Interested parties can find
some very rough patches in the git repository at:
 git://repo.or.cz/git/jrn.git tp/svn-fe-wip

The top two patches are completely bogus. No doubt some of the earlier ones are, too, which is why I do not think they are ready for review yet, except by extra curious people.

Now the features that would be most useful from fast-import become a bit clearer. Since a single svn revision can make multiple changes to a file, the ability to read back the currently staged content for the current revision would be helpful, like this:

  commit refs/remotes/origin/root
  mark :100
  committer localuser <localuser@machine.example.com>
  data <<END_MESSAGE
  
  from refs/remotes/origin/root^0
  M 100644 :72:"trunk/README" "branches/topic/README"
  cat "branches/topic/README"
  M 100755 inline branches/topic/README
  data <<END_FILE
  ... output from delta application goes here ...
  END_FILE
  ... etc ...
In other words, it would be nice to be able to
 1. use ':<mark>:<path>' references to retrieve data from a
    previous revision
 2. use 'cat <path>' references to retrieve data from the
    current revision.

By using these two features, I think we could eliminate the repo_tree module completely.

David's and Ram's discussions and patches from the last two weeks (or at least the part I have understood) have been very helpful.

David Barr (3):
      svndiff: Give caller responsibility for initializing line_buffer
      vcs-svn: Reduce memory allocation churn in move_window
      vcs-svn: extend svndump to parse version 3 format
Jonathan Nieder (14):
      Makefile: declare vcs-svn test dependencies
      line_buffer: Allow character-oriented input
      line_buffer: Let caller peek ahead to find stream end
      line_buffer: Add binary-safe read() function
      vcs-svn: Add svn delta parser
      svndiff: Handle truncated data in deltas
      svndiff: Handle truncated source file
      svndiff: Cap length of delta read
      Teach fast-import to print the id of each imported commit
      fast-import: Let importers retrieve the objects being written
      fast-import: Allow cat command with empty path
      fast-import: Allow cat requests at arbitrary points in stream
      [WIP] svn-fe: Use the --report-fd feature
      wip
Ramkumar Ramachandra (1):
      Add a sample user for the svndiff library
 Documentation/git-fast-import.txt |   49 ++++
 Makefile                          |   10 +-
 contrib/svn-fe/.gitignore         |    1 +
 contrib/svn-fe/Makefile           |   30 ++-
 contrib/svn-fe/svn-da.c           |   26 ++
 contrib/svn-fe/svn-da.txt         |   24 ++
 contrib/svn-fe/svn-fe.txt         |    6 +-
 fast-import.c                     |  147 ++++++++++-
 t/t9010-svn-fe.sh                 |   37 +++-
 t/t9010/newdata.diff0             |  Bin 0 -> 19392 bytes
 t/t9010/newdata.done              |  522 +++++++++++++++++++++++++++++++++++++
 t/t9010/src.diff0                 |  Bin 0 -> 74 bytes
 t/t9010/src.done                  |  522 +++++++++++++++++++++++++++++++++++++
 t/t9300-fast-import.sh            |  210 +++++++++++++++
 test-svn-fe.c                     |   38 +++-
 vcs-svn/LICENSE                   |    2 +
 vcs-svn/fast_export.c             |  158 +++++++++++-
 vcs-svn/fast_export.h             |   11 +-
 vcs-svn/line_buffer.c             |   24 ++
 vcs-svn/line_buffer.h             |    3 +
 vcs-svn/repo_tree.c               |    9 +-
 vcs-svn/svndiff.c                 |  477 +++++++++++++++++++++++++++++++++
 vcs-svn/svndiff.h                 |   11 +
 vcs-svn/svndump.c                 |   69 +++++-
 24 files changed, 2340 insertions(+), 46 deletions(-)
 create mode 100644 contrib/svn-fe/svn-da.c
 create mode 100644 contrib/svn-fe/svn-da.txt
 create mode 100644 t/t9010/blank.done
 create mode 100644 t/t9010/newdata.diff0
 create mode 100644 t/t9010/newdata.done
 create mode 100644 t/t9010/src.diff0
 create mode 100644 t/t9010/src.done
 create mode 100644 vcs-svn/svndiff.c
 create mode 100644 vcs-svn/svndiff.h
Previous: Jonathan NiederNext: Sverre Rabbelier
Message 50 of 75 in “Teach fast-import to import subtrees named by tree id”
  1. Teach fast-import to import subtrees named by tree idJonathan Nieder, Jul 1, 2010
  2. Teach fast-import to print the id of each imported commitJonathan Nieder, Jul 1, 2010
  3. Sverre RabbelierJul 2, 2010
  4. Jonathan NiederJul 2, 2010
  5. Sverre RabbelierJul 2, 2010
  6. Jonathan NiederJul 2, 2010
  7. Sverre RabbelierJul 2, 2010
  8. Jonathan NiederJul 2, 2010
  9. Sverre RabbelierJul 2, 2010
  10. Sam VilainJul 4, 2010
  11. Jonathan NiederJul 4, 2010
  12. Sam VilainJul 4, 2010
  13. Jonathan NiederJul 4, 2010
  14. Ramkumar RamachandraAug 17, 2010
  15. 0/3 fast-import: give importers access to the object storeJonathan Nieder, Sep 5, 2010
  16. 1/3 t9300 (fast-import): style tweaksJonathan Nieder, Sep 5, 2010
  17. 00/24 Re: [PATCH 1/3] t9300 (fast-import): style tweaksJonathan Nieder, Sep 24, 2010
  18. 01/24 t9300 (fast-import): avoid exiting early on failureJonathan Nieder, Sep 24, 2010
  19. 02/24 t9300 (fast-import): avoid hard-coded object namesJonathan Nieder, Sep 24, 2010
  20. 03/24 t9300 (fast-import): guard "export large marks" test setupJonathan Nieder, Sep 24, 2010
  21. Ramkumar RamachandraSep 24, 2010
  22. Raja R HarinathSep 24, 2010
  23. Ramkumar RamachandraSep 24, 2010
  24. Raja R HarinathSep 24, 2010
  25. 04/24 t9300 (fast-import): check exit status from upstream of pipesJonathan Nieder, Sep 24, 2010
  26. 05/24 t9300 (fast-import): check exit status from command substitutionsJonathan Nieder, Sep 24, 2010
  27. 06/24 t9300 (fast-import): use test_cmp in place of test $(foo) = $(bar)Jonathan Nieder, Sep 24, 2010
  28. 07/24 t9300 (fast-import): use tabs to indentJonathan Nieder, Sep 24, 2010
  29. Ramkumar RamachandraSep 24, 2010
  30. Jonathan NiederSep 24, 2010
  31. 08/24 t9300 (fast-import), series A: re-indentJonathan Nieder, Sep 24, 2010
  32. Sverre RabbelierSep 24, 2010
  33. Jonathan NiederSep 24, 2010
  34. 09/24 t9300 (fast-import), series B: re-indentJonathan Nieder, Sep 24, 2010
  35. 10/24 t9300 (fast-import), series C: re-indentJonathan Nieder, Sep 24, 2010
  36. 11/24 t9300 (fast-import), series D: re-indentJonathan Nieder, Sep 24, 2010
  37. 12/24 t9300 (fast-import), series E: re-indentJonathan Nieder, Sep 24, 2010
  38. 13/24 t9300 (fast-import), series F: re-indentJonathan Nieder, Sep 24, 2010
  39. 14/24 t9300 (fast-import), series H: re-indentJonathan Nieder, Sep 24, 2010
  40. 15/24 t9300 (fast-import), series I: re-indentJonathan Nieder, Sep 24, 2010
  41. 16/24 t9300 (fast-import), series J: re-indentJonathan Nieder, Sep 24, 2010
  42. 17/24 t9300 (fast-import), series K: re-indentJonathan Nieder, Sep 24, 2010
  43. 18/24 t9300 (fast-import), series L: re-indentJonathan Nieder, Sep 24, 2010
  44. 19/24 t9300 (fast-import), series M: re-indentJonathan Nieder, Sep 24, 2010
  45. 20/24 t9300 (fast-import), series N: re-indentJonathan Nieder, Sep 24, 2010
  46. 21/24 t9300 (fast-import), series O: re-indentJonathan Nieder, Sep 24, 2010
  47. 22/24 t9300 (fast-import), series P: re-indentJonathan Nieder, Sep 24, 2010
  48. 23/24 t9300 (fast-import), series Q: re-indentJonathan Nieder, Sep 24, 2010
  49. 24/24 t9300 (fast-import), series R: re-indentJonathan Nieder, Sep 24, 2010
  50. svn-fe statusJonathan Nieder, Sep 25, 2010
  51. Sverre RabbelierSep 25, 2010
  52. Jonathan NiederSep 27, 2010
  53. Sverre RabbelierSep 27, 2010
  54. 2/3 Teach fast-import to print the id of each imported commitJonathan Nieder, Sep 5, 2010
  55. 3/3 fast-import: Let importers retrieve the objects being writtenJonathan Nieder, Sep 5, 2010
  56. Ramkumar RamachandraSep 5, 2010
  57. Sverre RabbelierSep 5, 2010
  58. Ramkumar RamachandraSep 5, 2010
  59. Sverre RabbelierSep 5, 2010
  60. Jonathan NiederSep 5, 2010
  61. 4/3 fast-import: typofixJonathan Nieder, Sep 8, 2010
  62. 5/3 fast-import: allow cat command with empty pathJonathan Nieder, Sep 8, 2010
  63. 6/3 fast-import: Allow cat requests at arbitrary points in streamJonathan Nieder, Sep 8, 2010
  64. Sverre RabbelierSep 8, 2010
  65. Jonathan NiederSep 8, 2010
  66. Ramkumar RamachandraSep 8, 2010
  67. Sam VilainSep 16, 2010
  68. Sverre RabbelierSep 17, 2010
  69. Jonathan NiederSep 24, 2010
  70. Sverre RabbelierSep 24, 2010
  71. Jonathan NiederSep 25, 2010
  72. Sverre RabbelierSep 25, 2010
  73. Sverre RabbelierJul 2, 2010
  74. Jonathan NiederJul 2, 2010
  75. Ramkumar RamachandraJul 2, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.