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

Re: [PATCH/BUG] git-svn: add test for renamed directory fetch

From
SSanthosh <santhoshmani@gmail.com>
Date
Apr 3, 2008, 13:59 UTC
Message-ID
<3bc895b00804030659p21dcae2av2cad3db41935fa4e@mail.gmail.com>
In-Reply-To
<3bc895b00804030647o652e432cqb5a90eafbac906b2@mail.gmail.com>

git svn init svn://zzz/trunk/yyy (/some/path/with/rename/history) git svn fetch

results in the following error if the "path" being fetched was renamed in the past.

branch_from: /xxx => /xxx/trunk/yyy Found possible branch point: svn://xxx/trunk/yyy => svn://zzz/trunk/yyy, 7 Initializing parent: git-svn@7 svn-remote.svn.url already set: svn://zzz/trunk/yyy wanted to set to: svn://xxx/trunk/yyy

The above patch (testcase) exposes this bug. It seems to have been introduced in the commit "c586879cdfa4f8181a14e953a9152a4639eef333". Reverting this patch fixes this bug.

Regards, Santhosh.

On Thu, Apr 3, 2008 at 7:17 PM, Santhosh <santhoshmani@gmail.com> wrote:
Show 138 quoted lines
> This test tries to fetch a directory which had renames in the history from a
>  SVN repository.
>  ---
>   t/t9121-git-svn-fetch-renamed-dir.sh |   23 +++++++++
>   t/t9121/renamed-dir.dump             |   90 ++++++++++++++++++++++++++++++++++
>   2 files changed, 113 insertions(+), 0 deletions(-)
>   create mode 100755 t/t9121-git-svn-fetch-renamed-dir.sh
>   create mode 100644 t/t9121/renamed-dir.dump
>
>  diff --git a/t/t9121-git-svn-fetch-renamed-dir.sh
>  b/t/t9121-git-svn-fetch-renamed-dir.sh
>  new file mode 100755
>  index 0000000..5cd65a6
>  --- /dev/null
>  +++ b/t/t9121-git-svn-fetch-renamed-dir.sh
>  @@ -0,0 +1,23 @@
>  +#!/bin/sh
>  +#
>  +# Copyright (c) 2008 Santhosh Kumar Mani
>  +
>  +
>  +test_description='git-svn can fetch renamed directories'
>  +
>  +. ./lib-git-svn.sh
>  +
>  +test_expect_success 'load repository with renamed directory' "
>  +       svnadmin load -q $rawsvnrepo < ../t9121/renamed-dir.dump &&
>  +       start_httpd
>  +       "
>  +
>  +test_expect_success 'init and fetch repository' "
>  +       git svn init $svnrepo/newname &&
>  +       git svn fetch
>  +       "
>  +
>  +stop_httpd
>  +
>  +test_done
>  +
>  diff --git a/t/t9121/renamed-dir.dump b/t/t9121/renamed-dir.dump
>  new file mode 100644
>  index 0000000..5f9127b
>  --- /dev/null
>  +++ b/t/t9121/renamed-dir.dump
>  @@ -0,0 +1,90 @@
>  +SVN-fs-dump-format-version: 2
>  +
>  +UUID: 06b9b3ad-f546-4fbe-8328-fcb4e6ef5c3f
>  +
>  +Revision-number: 0
>  +Prop-content-length: 56
>  +Content-length: 56
>  +
>  +K 8
>  +svn:date
>  +V 27
>  +2008-04-02T09:11:59.778557Z
>  +PROPS-END
>  +
>  +Revision-number: 1
>  +Prop-content-length: 117
>  +Content-length: 117
>  +
>  +K 7
>  +svn:log
>  +V 14
>  +initial import
>  +K 10
>  +svn:author
>  +V 8
>  +santhosh
>  +K 8
>  +svn:date
>  +V 27
>  +2008-04-02T09:13:03.170863Z
>  +PROPS-END
>  +
>  +Node-path: name
>  +Node-kind: dir
>  +Node-action: add
>  +Prop-content-length: 10
>  +Content-length: 10
>  +
>  +PROPS-END
>  +
>  +
>  +Node-path: name/a.txt
>  +Node-kind: file
>  +Node-action: add
>  +Prop-content-length: 71
>  +Text-content-length: 6
>  +Text-content-md5: b1946ac92492d2347c6235b4d2611184
>  +Content-length: 77
>  +
>  +K 13
>  +svn:mime-type
>  +V 10
>  +text/plain
>  +K 13
>  +svn:eol-style
>  +V 2
>  +LF
>  +PROPS-END
>  +hello
>  +
>  +
>  +Revision-number: 2
>  +Prop-content-length: 109
>  +Content-length: 109
>  +
>  +K 7
>  +svn:log
>  +V 7
>  +renamed
>  +K 10
>  +svn:author
>  +V 8
>  +santhosh
>  +K 8
>  +svn:date
>  +V 27
>  +2008-04-02T09:14:22.952186Z
>  +PROPS-END
>  +
>  +Node-path: newname
>  +Node-kind: dir
>  +Node-action: add
>  +Node-copyfrom-rev: 1
>  +Node-copyfrom-path: name
>  +
>  +
>  +Node-path: name
>  +Node-action: delete
>  +
>  +
>  --
>  1.5.5.rc3.dirty
>
Previous: SanthoshNext: Eric Wong
Message 2 of 3 in “git-svn: add test for renamed directory fetch”
  1. git-svn: add test for renamed directory fetchSanthosh, Apr 3, 2008
  2. SanthoshApr 3, 2008
  3. git-svn: fix following renamed paths when tracking a single pathEric Wong, Apr 7, 2008

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.