|
|
- #!/usr/bin/env bash
- set -e
- [ -n "$RBENV_DEBUG" ] && set -x
-
- print_set_version() {
- echo "<version> should be a string matching a Ruby version known by rbenv."
-
- local versions="$(rbenv-versions --bare)"
- if [ -z "$versions" ]; then
- echo "There are currently no Ruby versions installed for rbenv."
- else
- echo "The currently installed Ruby versions are:"
- echo "$versions" | sed 's/^/ /'
- fi
-
- echo
- echo "The special version string 'system' will use your default system Ruby."
- }
-
- case "$1" in
- "") echo "usage: rbenv <command> [<args>]
-
- Some useful rbenv commands are:
- commands List all rbenv commands
- rehash Rehash rbenv shims (run this after installing binaries)
- global Set or show the global Ruby version
- local Set or show the local directory-specific Ruby version
- shell Set or show the shell-specific Ruby version
- version Show the current Ruby version
- versions List all Ruby versions known by rbenv
- which Show the full path for the given Ruby command
- whence List all Ruby versions with the given command
-
- See 'rbenv help <command>' for information on a specific command.
- For full documentation, see: https://github.com/sstephenson/rbenv#readme"
- ;;
- commands) echo "usage: rbenv commands
- rbenv commands --sh
- rbenv commands --no-sh
-
- List all rbenv commands."
- ;;
- global) echo "usage: rbenv global <version>
-
- Sets the global Ruby version. You can override the global version at
- any time by setting a directory-specific version with \`rbenv local'
- or by setting the RBENV_VERSION environment variable.
-
- $(print_set_version)"
- ;;
- local) echo "usage: rbenv local <version>
- rbenv local --unset
-
- Sets the local directory-specific Ruby version by writing the version
- name to a file named '.rbenv-version'.
-
- When you run a Ruby command, rbenv will look for an '.rbenv-version'
- file in the current directory and each parent directory. If no such
- file is found in the tree, rbenv will use the global Ruby version
- specified with \`rbenv global', or the version specified in the
- RBENV_VERSION environment variable.
-
- $(print_set_version)"
- ;;
- shell) echo "usage: rbenv shell <version>
- rbenv shell --unset
-
- Sets a shell-specific Ruby version by setting the 'RBENV_VERSION'
- environment variable in your shell. This version overrides both
- project-specific versions and the global version.
-
- $(print_set_version)"
- ;;
- versions) echo "usage: rbenv versions
- rbenv versions --bare
-
- Lists all Ruby versions known by rbenv."
- ;;
- which) echo "usage: rbenv which <command>
-
- Displays the full path to the binary that rbenv will execute when you
- run the given command."
- ;;
- whence) echo "usage: rbenv whence <command>
-
- Lists all Ruby versions with the given command installed."
- ;;
- *)
- command_path="$(command -v "rbenv-$1" || true)"
- if [ -n "$command_path" ]; then
- echo "Sorry, the \`$1' command isn't documented yet."
- echo
- echo "You can view the command's source here:"
- echo "$command_path"
- echo
- else
- echo "rbenv: no such command \`$1'"
- fi
- esac
|