Skip to content

Commit

Permalink
Customize git command for installations that lack certain commands.
Browse files Browse the repository at this point in the history
When the platform lacks certain git subcommands, omit them from the
list of subcommands that are available from "git" wrapper.

Noticed by Geert Bosch.

Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Junio C Hamano committed Oct 2, 2005
1 parent 18c5a52 commit 0842acf
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 12 deletions.
7 changes: 6 additions & 1 deletion Makefile
Expand Up @@ -122,6 +122,8 @@ PROGRAMS = \
# Backward compatibility -- to be removed after 1.0
PROGRAMS += git-ssh-pull git-ssh-push

GIT_LIST_TWEAK =

PYMODULES = \
gitMergeCommon.py

Expand All @@ -131,6 +133,8 @@ endif

ifdef WITH_SEND_EMAIL
SCRIPT_PERL += git-send-email.perl
else
GIT_LIST_TWEAK += -e '/^send-email$$/d'
endif

LIB_FILE=libgit.a
Expand Down Expand Up @@ -282,7 +286,8 @@ all:
git: git.sh Makefile
rm -f $@+ $@
sed -e '1s|#!.*/sh|#!$(SHELL_PATH)|' \
-e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' <$@.sh >$@+
-e 's/@@GIT_VERSION@@/$(GIT_VERSION)/g' \
$(GIT_LIST_TWEAK) <$@.sh >$@+
chmod +x $@+
mv $@+ $@

Expand Down
55 changes: 44 additions & 11 deletions git.sh
Expand Up @@ -16,17 +16,50 @@ esac

echo "Usage: git COMMAND [OPTIONS] [TARGET]"
if [ -n "$cmd" ]; then
echo " git command '$cmd' not found: commands are:"
else
echo " git commands are:"
echo "git command '$cmd' not found."
fi
echo "git commands are:"

cat <<\EOF
add apply archimport bisect branch checkout cherry clone
commit count-objects cvsimport diff fetch format-patch
fsck-cache get-tar-commit-id init-db log ls-remote octopus
pack-objects parse-remote patch-id prune pull push rebase
relink rename repack request-pull reset resolve revert
send-email shortlog show-branch status tag verify-tag
whatchanged
fmt <<\EOF | sed -e 's/^/ /'
add
apply
archimport
bisect
branch
checkout
cherry
clone
commit
count-objects
cvsimport
diff
fetch
format-patch
fsck-objects
get-tar-commit-id
init-db
log
ls-remote
octopus
pack-objects
parse-remote
patch-id
prune
pull
push
rebase
relink
rename
repack
request-pull
reset
resolve
revert
send-email
shortlog
show-branch
status
tag
verify-tag
whatchanged
EOF

0 comments on commit 0842acf

Please sign in to comment.