<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/git-svn.perl, branch v2.2.3</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.2.3</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.2.3'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2014-09-14T08:08:54Z</updated>
<entry>
<title>git-svn: delay term initialization</title>
<updated>2014-09-14T08:08:54Z</updated>
<author>
<name>Eric Wong</name>
<email>normalperson@yhbt.net</email>
</author>
<published>2014-09-14T07:38:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=30d45f798d1a4b14759cd977b68be4476d66ea17'/>
<id>urn:sha1:30d45f798d1a4b14759cd977b68be4476d66ea17</id>
<content type='text'>
On my Debian 7 system, this fixes annoying warnings when the output
of "git svn" commands are redirected:

    Unable to get Terminal Size. The TIOCGWINSZ ioctl didn't work.
    The COLUMNS and LINES environment variables didn't work. The
    resize program didn't work.

Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git svn: find-rev allows short switches for near matches</title>
<updated>2014-09-14T08:08:24Z</updated>
<author>
<name>Eric Wong</name>
<email>normalperson@yhbt.net</email>
</author>
<published>2014-09-07T08:35:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a831a3fd86bb7280020d650d52cce4af9e161c46'/>
<id>urn:sha1:a831a3fd86bb7280020d650d52cce4af9e161c46</id>
<content type='text'>
Allow -B and -A to act as short aliases for --before and --after
options respectively.  This reduces typing and hopefully allows
reuse of muscle memory for grep(1) users.

Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git svn: info: correctly handle absolute path args</title>
<updated>2014-09-14T08:08:24Z</updated>
<author>
<name>Eric Wong</name>
<email>normalperson@yhbt.net</email>
</author>
<published>2014-08-03T01:44:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4950eed520ce3dbb786e33fe8a8dc48e492998b4'/>
<id>urn:sha1:4950eed520ce3dbb786e33fe8a8dc48e492998b4</id>
<content type='text'>
Calling "git svn info $(pwd)" would hit:
  "Reading from filehandle failed at ..."
errors due to improper prefixing and canonicalization.

Strip the toplevel path from absolute filesystem paths to ensure
downstream canonicalization routines are only exposed to paths
tracked in git (or SVN).

v2:
  Thanks to Andrej Manduch for originally noticing the issue
  and fixing my original version of this to handle
  more corner cases such as "/path/to/top/../top" and
  "/path/to/top/../top/file" as shown in the new test cases.

v3:
  Fix pathname portability problems pointed out by Johannes Sixt
  with a hint from brian m. carlson.

Cc: Johannes Sixt &lt;j6t@kdbg.org&gt;
Cc: "brian m. carlson" &lt;sandals@crustytoothpaste.net&gt;
Signed-off-by: Andrej Manduch &lt;amanduch@gmail.com&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git-svn: branch: avoid systematic prompt for cert/pass</title>
<updated>2014-09-14T08:08:24Z</updated>
<author>
<name>Monard Vong</name>
<email>travelingsoul86@gmail.com</email>
</author>
<published>2014-07-24T16:25:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=785a1c82587ca6e796595e63508ad6b32104d16c'/>
<id>urn:sha1:785a1c82587ca6e796595e63508ad6b32104d16c</id>
<content type='text'>
Commands such as "git svn init/fetch/dcommit" do not prompt for client
certificate/password if they are stored in SVN config file.  Make
"git svn branch" consistent with the other commands, as SVN::Client is
capable of building its own authentication baton from information in the
SVN config directory.

Signed-off-by: Monard Vong &lt;travelingsoul86@gmail.com&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>Git 2.0: git svn: Set default --prefix='origin/' if --prefix is not given</title>
<updated>2014-04-19T11:30:13Z</updated>
<author>
<name>Johan Herland</name>
<email>johan@herland.net</email>
</author>
<published>2013-10-11T12:57:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=fe191fcaa58cb785c804465a0da9bcba9fd9e822'/>
<id>urn:sha1:fe191fcaa58cb785c804465a0da9bcba9fd9e822</id>
<content type='text'>
git-svn by default puts its Subversion-tracking refs directly in
refs/remotes/*. This runs counter to Git's convention of using
refs/remotes/$remote/* for storing remote-tracking branches.

Furthermore, combining git-svn with regular git remotes run the risk of
clobbering refs under refs/remotes (e.g. if you have a git remote
called "tags" with a "v1" branch, it will overlap with the git-svn's
tracking branch for the "v1" tag from Subversion.

Even though the git-svn refs stored in refs/remotes/* are not "proper"
remote-tracking branches (since they are not covered by a proper git
remote's refspec), they clearly represent a similar concept, and would
benefit from following the same convention.

For example, if git-svn tracks Subversion branch "foo" at
refs/remotes/foo, and you create a local branch refs/heads/foo to add
some commits to be pushed back to Subversion (using "git svn dcommit),
then it is clearly unhelpful of Git to throw

  warning: refname 'foo' is ambiguous.

every time you checkout, rebase, or otherwise interact with the branch.

The existing workaround for this is to supply the --prefix=quux/ to
git svn init/clone, so that git-svn's tracking branches end up in
refs/remotes/quux/* instead of refs/remotes/*. However, encouraging
users to specify --prefix to work around a design flaw in git-svn is
suboptimal, and not a long term solution to the problem. Instead,
git-svn should default to use a non-empty prefix that saves
unsuspecting users from the inconveniences described above.

This patch will only affect newly created git-svn setups, as the
--prefix option only applies to git svn init (and git svn clone).
Existing git-svn setups will continue with their existing (lack of)
prefix. Also, if anyone somehow prefers git-svn's old layout, they
can recreate that by explicitly passing an empty prefix (--prefix "")
on the git svn init/clone command line.

The patch changes the default value for --prefix from "" to "origin/",
updates the git-svn manual page, and fixes the fallout in the git-svn
testcases.

(Note that this patch might be easier to review using the --word-diff
and --word-diff-regex=. diff options.)

[ew: squashed description of &lt;= 1.9 behavior into manpage]

Suggested-by: Thomas Ferris Nicolaisen &lt;tfnico@gmail.com&gt;
Signed-off-by: Johan Herland &lt;johan@herland.net&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git-svn: Warn about changing default for --prefix in Git v2.0</title>
<updated>2013-10-12T22:30:53Z</updated>
<author>
<name>Johan Herland</name>
<email>johan@herland.net</email>
</author>
<published>2013-10-11T12:57:06Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f849bb6b3b4ccc7cc1a68f49d6ff1e9c508fdf17'/>
<id>urn:sha1:f849bb6b3b4ccc7cc1a68f49d6ff1e9c508fdf17</id>
<content type='text'>
In Git v2.0, we will change the default --prefix for init/clone from
none/empty to "origin/" (which causes SVN-tracking branches to be
placed at refs/remotes/origin/* instead of refs/remotes/*).

This patch warns users about the upcoming change, both in the git-svn
manual page, and on stderr when running init/clone in the "multi-mode"
without providing a --prefix.

Cc: Eric Wong &lt;normalperson@yhbt.net&gt;
Signed-off-by: Johan Herland &lt;johan@herland.net&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git-svn: fix signed commit parsing</title>
<updated>2013-10-10T06:48:10Z</updated>
<author>
<name>Nicolas Vigier</name>
<email>boklm@mars-attacks.org</email>
</author>
<published>2013-09-30T14:46:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=60786bd41a575126c0735c55b46e1d0ee2b358cc'/>
<id>urn:sha1:60786bd41a575126c0735c55b46e1d0ee2b358cc</id>
<content type='text'>
When parsing a commit object, git-svn wrongly think that a line
containing spaces means the end of headers and the start of the commit
message. In case of signed commit, the gpgsig entry contains a line with
one space, so "git svn dcommit" will include part of the signature in
the commit message.

An example of such problem :
http://svnweb.mageia.org/treasurer?view=revision&amp;revision=86

This commit changes the regex to only match an empty line as separator
between the headers and the commit message.

Signed-off-by: Nicolas Vigier &lt;boklm@mars-attacks.org&gt;
Reviewed-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>Merge branch 'vl/typofix'</title>
<updated>2013-06-26T22:07:52Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-06-26T22:07:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eac9a1a1953bcd89678f649a1efbc8d1a7de9f40'/>
<id>urn:sha1:eac9a1a1953bcd89678f649a1efbc8d1a7de9f40</id>
<content type='text'>
* vl/typofix:
  random typofixes (committed missing a 't', successful missing an 's')
</content>
</entry>
<entry>
<title>random typofixes (committed missing a 't', successful missing an 's')</title>
<updated>2013-06-19T18:31:33Z</updated>
<author>
<name>Veres Lajos</name>
<email>vlajos@gmail.com</email>
</author>
<published>2013-06-19T05:37:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=f7e604ed390cec7b20471f9c03bbc507ebfe41c0'/>
<id>urn:sha1:f7e604ed390cec7b20471f9c03bbc507ebfe41c0</id>
<content type='text'>
Signed-off-by: Veres Lajos &lt;vlajos@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Fix `git svn` `rebase` &amp; `dcommit` if top-level HEAD directory exist</title>
<updated>2013-06-12T20:38:48Z</updated>
<author>
<name>Slava Kardakov</name>
<email>ojab@ojab.ru</email>
</author>
<published>2013-06-05T18:31:27Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=9926f66fbd4392c9c7c05fae83e80bc12e0be889'/>
<id>urn:sha1:9926f66fbd4392c9c7c05fae83e80bc12e0be889</id>
<content type='text'>
When a file (or a directory) called HEAD exists in the working tree,
internal calls git svn makes trigger "did you mean a revision or a
path?" ambiguity check.

    $ git svn rebase
    fatal: ambiguous argument 'HEAD': both revision and filename
    Use '--' to separate paths from revisions, like this:
    'git &lt;command&gt; [&lt;revision&gt;...] -- [&lt;file&gt;...]'
    rev-list --first-parent --pretty=medium HEAD: command returned error: 128

Explicitly disambiguate by adding "--" after the revision.

Signed-off-by: Slava Kardakov &lt;ojab@ojab.ru&gt;
Reviewed-by: Jeff King &lt;peff@peff.net&gt;
Acked-by: Eric Wong &lt;normalperson@yhbt.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
