From: Eric Wong <e@80x24.org>
To: Junio C Hamano <gitster@pobox.com>
Cc: git@vger.kernel.org
Subject: [PATCH] git-svn: allow --version to work anywhere
Date: Fri, 22 Jul 2016 20:46:10 +0000 [thread overview]
Message-ID: <20160722204610.GA20896@whir> (raw)
In-Reply-To: <xmqqeg6lbnow.fsf@gitster.mtv.corp.google.com>
Junio C Hamano <gitster@pobox.com> wrote:
> Eric Wong <e@80x24.org> writes:
> > I'm hoping "cd /" in the test will always succeed;
> > but I suppose non-*nix systems might fail, here.
>
> How about digging a few levels of directory hierarchy, exporting
> GIT_CEILING_DIRECTORIES so that we won't find any repository and
> going there to run these tests?
Ah, thanks; I missed that.
Repushed my master in case it's a convenient time to pull.
The following changes since commit 29493589e97a2de0c4c1c314f61ccafaee3b5caf:
archive-tar: huge offset and future timestamps would not work on 32-bit (2016-07-15 10:51:55 -0700)
are available in the git repository at:
git://bogomips.org/git-svn.git master
for you to fetch changes up to c0071ae5dc1c610ab3791ece7ccf7d4772fde151:
git-svn: allow --version to work anywhere (2016-07-22 20:38:11 +0000)
----------------------------------------------------------------
Eric Wong (2):
git-svn: document svn.authorsProg in config
git-svn: allow --version to work anywhere
Documentation/git-svn.txt | 3 +++
git-svn.perl | 4 ++--
t/t9100-git-svn-basic.sh | 19 +++++++++++++++++++
3 files changed, 24 insertions(+), 2 deletions(-)
-----8<-----
Subject: [PATCH] git-svn: allow --version to work anywhere
Checking the version of the installed SVN libraries should not
require a git repository at all. This matches the behavior of
"git --version".
Add a test for "git svn help" for the same behavior while we're
at it, too.
Signed-off-by: Eric Wong <e@80x24.org>
---
git-svn.perl | 4 ++--
t/t9100-git-svn-basic.sh | 19 +++++++++++++++++++
2 files changed, 21 insertions(+), 2 deletions(-)
diff --git a/git-svn.perl b/git-svn.perl
index f609e54..4d41d22 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -339,7 +339,7 @@ if ($cmd && $cmd =~ /(?:clone|init|multi-init)$/) {
die "failed to open $ENV{GIT_DIR}: $!\n";
$ENV{GIT_DIR} = $1 if <$fh> =~ /^gitdir: (.+)$/;
}
-} else {
+} elsif ($cmd) {
my ($git_dir, $cdup);
git_cmd_try {
$git_dir = command_oneline([qw/rev-parse --git-dir/]);
@@ -356,7 +356,7 @@ if ($cmd && $cmd =~ /(?:clone|init|multi-init)$/) {
my %opts = %{$cmd{$cmd}->[2]} if (defined $cmd);
-read_git_config(\%opts);
+read_git_config(\%opts) if $ENV{GIT_DIR};
if ($cmd && ($cmd eq 'log' || $cmd eq 'blame')) {
Getopt::Long::Configure('pass_through');
}
diff --git a/t/t9100-git-svn-basic.sh b/t/t9100-git-svn-basic.sh
index 28082b1..ab6593b 100755
--- a/t/t9100-git-svn-basic.sh
+++ b/t/t9100-git-svn-basic.sh
@@ -19,6 +19,25 @@ case "$GIT_SVN_LC_ALL" in
;;
esac
+deepdir=nothing-above
+ceiling=$PWD
+
+test_expect_success 'git svn --version works anywhere' '
+ mkdir -p "$deepdir" && (
+ export GIT_CEILING_DIRECTORIES="$ceiling" &&
+ cd "$deepdir" &&
+ git svn --version
+ )
+'
+
+test_expect_success 'git svn help works anywhere' '
+ mkdir -p "$deepdir" && (
+ export GIT_CEILING_DIRECTORIES="$ceiling" &&
+ cd "$deepdir" &&
+ git svn help
+ )
+'
+
test_expect_success \
'initialize git svn' '
mkdir import &&
--
EW
next prev parent reply other threads:[~2016-07-22 20:46 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-20 0:47 [RFC] git-svn: allow --version to work anywhere Eric Wong
2016-07-22 17:13 ` Junio C Hamano
2016-07-22 20:46 ` Eric Wong [this message]
2016-07-28 20:16 ` [PATCH] " Junio C Hamano
2016-07-28 21:23 ` Junio C Hamano
2016-07-28 22:07 ` Eric Wong
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160722204610.GA20896@whir \
--to=e@80x24.org \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.