Hi, On Wed, 28 Nov 2007, Junio C Hamano wrote: > "Nguyen Thai Ngoc Duy" <pclouds@xxxxxxxxx> writes: > > > On Nov 28, 2007 8:13 AM, Junio C Hamano <gitster@xxxxxxxxx> 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 - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html