From: Johannes Schindelin <Johannes.Schindelin@gmx.de>
To: Junio C Hamano <gitster@pobox.com>
Cc: Nguyen Thai Ngoc Duy <pclouds@gmail.com>, Jan Hudec <bulb@ucw.cz>,
git@vger.kernel.org
Subject: Re: [PATCH] Move all dashed form git commands to libexecdir
Date: Wed, 28 Nov 2007 23:40:07 +0000 (GMT) [thread overview]
Message-ID: <Pine.LNX.4.64.0711282334250.27959@racer.site> (raw)
In-Reply-To: <7vfxyq2c9b.fsf@gitster.siamese.dyndns.org>
Hi,
On Wed, 28 Nov 2007, Junio C Hamano wrote:
> "Nguyen Thai Ngoc Duy" <pclouds@gmail.com> writes:
>
> > On Nov 28, 2007 8:13 AM, Junio C Hamano <gitster@pobox.com> wrote:
> >> In case somebody is thinking about 36e5e70e0f40 (Start deprecating
> >> "git-command" in favor of "git command"), that is a somewhat different
> >> issue. What Linus suggested is not installing git-foo link for built-in
> >> commands _anywhere_ on the filesystem. Not just "out of user's PATH".
> >> That is not deprecating dash form but removing the support for it. We
> >> need to give ample time for users to adjust to such a change.
> >
> > A little note on this one. I've been using git without builtin links
> > for a while with my git-box port. There are still some builtin fixups
> > needed. And because execv_git_cmd() always uses dash form, so it's
> > impossible to use vanilla git without builtin links.
>
> Thanks for a heads up.
>
> Would people agree with a rough roadmap like this?
>
> - v1.5.4 will ship with gitexecdir=$(bindir) in Makefile. But the
> release notes for the version will warn users that:
>
> (1) using git-foo from the command line, and
>
> (2) using git-foo from your scripts without first prepending the
> return value of "git --exec-path" to the PATH
>
> is now officially deprecated (it has been deprecated for a long time
> since January 2006, v1.2.0~149) and upcoming v1.5.5 will ship with
> the default configuration that does not install git-foo form in
> user's PATH.
Maybe we can squeeze a step in here where only porcelains are installed in
the bindir?
FWIW I think that we should fix the problem with the builtins being called
via their hard links. But how? As of now, libgit.a has no idea what the
builtins are; this information is buried in git.c.
The fundamental problem is that we cannot move handle_internal_command()
into libgit.a, because it has pointers to all builtin cmd_*() functions.
So maybe the best solution would be to try "git <command>" first, and then
"git-<command>"? But this means another exec() call :-(
Ciao,
Dscho
next prev parent reply other threads:[~2007-11-28 23:40 UTC|newest]
Thread overview: 92+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-27 15:02 [PATCH RFC] Move all dashed form git commands to libexecdir Nguyễn Thái Ngọc Duy
2007-11-27 15:12 ` Johannes Schindelin
2007-11-27 15:25 ` Nicolas Pitre
2007-11-27 16:04 ` [PATCH] " Nguyễn Thái Ngoc Duy
2007-11-27 16:18 ` Johannes Schindelin
2007-11-28 0:07 ` Jan Hudec
2007-11-28 1:13 ` Junio C Hamano
2007-11-28 8:18 ` Jan Hudec
2007-11-28 8:36 ` Nguyen Thai Ngoc Duy
2007-11-28 23:14 ` Junio C Hamano
2007-11-28 23:40 ` Johannes Schindelin [this message]
2007-11-28 23:48 ` Junio C Hamano
2007-11-29 0:01 ` Johannes Schindelin
2007-11-29 0:59 ` A Large Angry SCM
2007-11-29 1:02 ` Junio C Hamano
2007-11-29 3:17 ` Nguyen Thai Ngoc Duy
2007-11-29 14:09 ` Nicolas Pitre
2007-11-29 22:36 ` Junio C Hamano
2007-11-30 7:32 ` Wincent Colaiuta
2007-11-30 11:28 ` Eyvind Bernhardsen
2007-11-30 12:08 ` [PATCH] transport.c: call dash-less form of receive-pack and upload-pack on remote Johannes Schindelin
2007-12-01 2:36 ` Junio C Hamano
2007-12-01 10:17 ` Johannes Schindelin
2007-12-01 19:30 ` Junio C Hamano
2007-12-01 23:03 ` Johannes Schindelin
2007-12-01 23:15 ` Johannes Schindelin
2007-12-02 1:57 ` Junio C Hamano
2007-12-02 2:52 ` [PATCH 0/3] Call builtin functions directly, was " Johannes Schindelin
2007-12-02 2:54 ` [PATCH 1/3] Introduce release_all_objects() Johannes Schindelin
2007-12-02 2:54 ` [PATCH 2/3] Include the objects needed for the builtin functions into libgit.a Johannes Schindelin
2007-12-02 2:55 ` [PATCH 3/3] Introduce execv_git_builtin() and use it Johannes Schindelin
2007-12-02 3:04 ` Johannes Schindelin
2007-12-02 3:16 ` [REPLACEMENT PATCH " Johannes Schindelin
2007-12-02 5:19 ` [PATCH 0/3] Call builtin functions directly, was Re: [PATCH] transport.c: call dash-less form of receive-pack and upload-pack on remote Junio C Hamano
2007-12-02 11:35 ` Johannes Schindelin
2007-11-30 12:19 ` [PATCH] Move all dashed form git commands to libexecdir Nguyen Thai Ngoc Duy
2007-11-30 13:35 ` Johannes Schindelin
2007-11-29 15:08 ` Jeff King
2007-11-29 20:05 ` Nguyen Thai Ngoc Duy
2007-11-29 21:14 ` Jeff King
2007-11-29 22:19 ` Johannes Schindelin
2007-11-29 23:14 ` Jeff King
2007-11-29 23:30 ` Linus Torvalds
2007-11-30 0:13 ` Junio C Hamano
2007-11-30 0:35 ` Jeff King
2007-11-30 0:49 ` Junio C Hamano
2007-11-30 0:58 ` Jeff King
2007-11-30 1:13 ` Nicolas Pitre
2007-11-30 1:17 ` Jeff King
2007-11-30 5:42 ` Steffen Prohaska
2007-11-30 7:18 ` Andreas Ericsson
2007-11-30 15:09 ` Jeff King
2007-11-30 20:01 ` Junio C Hamano
2007-11-30 21:25 ` Jeff King
2007-11-30 23:10 ` Johannes Schindelin
2007-12-02 15:02 ` Wincent Colaiuta
2007-12-02 16:39 ` Johannes Schindelin
2007-12-02 16:56 ` Pascal Obry
2007-12-02 17:23 ` Johannes Schindelin
2007-12-01 2:37 ` Junio C Hamano
2007-12-01 4:17 ` Jeff King
2007-11-30 2:29 ` Linus Torvalds
2007-11-30 2:55 ` Nicolas Pitre
2007-11-30 5:51 ` Steffen Prohaska
2007-11-30 15:12 ` Jeff King
2007-11-30 15:28 ` Santi Béjar
2007-11-30 15:29 ` Jeff King
2007-11-30 15:50 ` Linus Torvalds
2007-11-30 16:22 ` Jeff King
2007-11-30 18:28 ` Johannes Schindelin
2007-11-30 18:37 ` Jeff King
2007-11-30 23:05 ` Johannes Schindelin
2007-11-30 23:21 ` Jeff King
2007-11-30 23:38 ` Johannes Schindelin
[not found] ` <fcaeb9bf0711302234l32460a1fqbf9825fc8055f99d@mail.gmail.com>
2007-12-01 19:32 ` Junio C Hamano
2007-12-01 21:26 ` Jeff King
2007-12-02 5:50 ` Nguyen Thai Ngoc Duy
2007-11-30 0:52 ` Nicolas Pitre
2007-11-30 1:00 ` Jeff King
2007-11-30 1:19 ` Nicolas Pitre
2007-11-30 1:25 ` Jeff King
2007-11-30 1:33 ` Nicolas Pitre
2007-11-30 1:53 ` Jeff King
2007-11-30 2:23 ` A Large Angry SCM
2007-11-30 0:40 ` Nguyen Thai Ngoc Duy
2007-11-30 0:51 ` A Large Angry SCM
2007-11-30 0:54 ` Johannes Schindelin
2007-11-30 2:03 ` A Large Angry SCM
2007-11-30 1:01 ` Nicolas Pitre
2007-11-30 2:17 ` A Large Angry SCM
2007-11-30 2:27 ` Nicolas Pitre
2007-11-29 0:14 ` Jakub Narebski
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=Pine.LNX.4.64.0711282334250.27959@racer.site \
--to=johannes.schindelin@gmx.de \
--cc=bulb@ucw.cz \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=pclouds@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).