From: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Cc: Eric Wong <normalperson@yhbt.net>
Subject: [PATCH/RFC] git-svn: remove auto_abbrev (Getopt::Long option)
Date: Sat, 13 Aug 2011 22:33:32 +0200 [thread overview]
Message-ID: <4E46DF9C.8040900@gmail.com> (raw)
RFC because this changes user interface (no option abbreviation),
but I know no other good way to fix the --author problem.
The --author option would be useful, because I usually use
git svn log --oneline
and paste the changes with svn revision numbers to bugzilla etc.
All tests pass with this change.
--------8<--------
From: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
Date: Sat, 13 Aug 2011 21:00:56 +0200
Subject: [PATCH] git-svn: remove auto_abbrev (Getopt::Long option)
auto_abbrev allows to specify shortest unique option prefix.
For example '--authors-file' can be written also as '--author'
given there is no other option which begins with '--author'.
'git-svn log' passes all unrecognized options to 'git log'. It should
also pass '--author' but due to auto_abbrev it recognizes it as
'--authors-file'. In result it's not possible to use this option.
Fix this by removing auto_abbrev. No other perl script seems to use it,
also other git commands seems to have no option abbreviation feature.
The side effect is that you can not abbreviate options to git-svn, obviously.
In fact only log and blame requires no option abbreviation, because only they
use pass_through option (pass unrecognized options), but I think it would not
be natural if some git-svn commands had options abbreviations and some didn't.
Alternative would be to handle all conflicting blame/log options, but
maintaing it would be a nightmare...
Signed-off-by: Piotr Krukowiecki <piotr.krukowiecki@gmail.com>
---
git-svn.perl | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/git-svn.perl b/git-svn.perl
index 89f83fd..3e2e276 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -56,7 +56,7 @@ use File::Basename qw/dirname basename/;
use File::Path qw/mkpath/;
use File::Spec;
use File::Find;
-use Getopt::Long qw/:config gnu_getopt no_ignore_case auto_abbrev/;
+use Getopt::Long qw/:config gnu_getopt no_ignore_case/;
use IPC::Open3;
use Git;
use Memoize; # core since 5.8.0, Jul 2002
--
1.7.6.GIT
--
Piotr Krukowiecki
next reply other threads:[~2011-08-13 20:33 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-08-13 20:33 Piotr Krukowiecki [this message]
2011-08-17 1:02 ` [PATCH/RFC] git-svn: remove auto_abbrev (Getopt::Long option) 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=4E46DF9C.8040900@gmail.com \
--to=piotr.krukowiecki@gmail.com \
--cc=git@vger.kernel.org \
--cc=normalperson@yhbt.net \
/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.