1
0
mirror of https://github.com/pyenv/pyenv.git synced 2025-11-12 13:33:45 -05:00

Split rbenv-version into rbenv-version-name and rbenv-version-origin, update versions, prefix, and which appropriately

This commit is contained in:
Ryan Baumann
2011-08-09 16:41:35 -04:00
parent 2a495dc9ac
commit bd0e1a73f9
6 changed files with 72 additions and 58 deletions

View File

@@ -1,52 +1,3 @@
#!/usr/bin/env bash -e
read_version_file() {
egrep -m 1 '[^[:space:]]' "$1"
}
find_version_file() {
local root="$(pwd)"
while [ -n "$root" ]; do
if [ -e "${root}/.rbenv-version" ]; then
echo "${root}/.rbenv-version"
return 0
fi
root="${root%/*}"
done
return 1
}
DEFAULT_PATH="${HOME}/.rbenv/default"
find_default_version_file() {
if [ -e "$DEFAULT_PATH" ]; then
echo "$DEFAULT_PATH"
return 0
fi
return 1
}
if [ -z "$RBENV_VERSION" ]; then
RBENV_VERSION_FILE="$(find_version_file || find_default_version_file || true)"
if [ -n "$RBENV_VERSION_FILE" ]; then
RBENV_VERSION="$(read_version_file "$RBENV_VERSION_FILE")"
else
echo system > "$DEFAULT_PATH"
RBENV_VERSION=system
fi
fi
if [ "$RBENV_VERSION" = "system" ]; then
echo "$RBENV_VERSION"
exit
fi
RBENV_VERSION_PATH="${HOME}/.rbenv/versions/${RBENV_VERSION}"
if [ -d "$RBENV_VERSION_PATH" ]; then
echo "$RBENV_VERSION"
else
echo "rbenv: version \`$RBENV_VERSION' is not installed" >&2
exit 1
fi
echo "$(rbenv-version-name) (set by $(rbenv-version-origin))"