mirror of
				https://github.com/nvm-sh/nvm.git
				synced 2025-10-31 10:15:53 +08:00 
			
		
		
		
	nvm alias: slightly speed up alias resolution.
				
					
				
			This commit is contained in:
		
							
								
								
									
										20
									
								
								nvm.sh
									
									
									
									
									
								
							
							
						
						
									
										20
									
								
								nvm.sh
									
									
									
									
									
								
							| @@ -391,7 +391,7 @@ nvm_binary_available() { | |||||||
|  |  | ||||||
| nvm_alias() { | nvm_alias() { | ||||||
|   local ALIAS |   local ALIAS | ||||||
|   ALIAS="$1" |   ALIAS="${1-}" | ||||||
|   if [ -z "$ALIAS" ]; then |   if [ -z "$ALIAS" ]; then | ||||||
|     echo >&2 'An alias is required.' |     echo >&2 'An alias is required.' | ||||||
|     return 1 |     return 1 | ||||||
| @@ -2259,8 +2259,10 @@ $NVM_LS_REMOTE_POST_MERGED_OUTPUT" | command grep -v "N/A" | command sed '/^$/d' | |||||||
|       command mkdir -p "$NVM_ALIAS_DIR" |       command mkdir -p "$NVM_ALIAS_DIR" | ||||||
|       if [ $# -le 2 ]; then |       if [ $# -le 2 ]; then | ||||||
|         local DEST |         local DEST | ||||||
|         for ALIAS_PATH in "$NVM_ALIAS_DIR"/"${2-}"*; do |         local ALIAS | ||||||
|           ALIAS="$(command basename "$ALIAS_PATH")" |         local ALIAS_PATH | ||||||
|  |         for ALIAS_PATH in "$NVM_ALIAS_DIR/${2-}"*; do | ||||||
|  |           ALIAS="${ALIAS_PATH/$NVM_ALIAS_DIR\//}" | ||||||
|           DEST="$(nvm_alias "$ALIAS" 2> /dev/null)" |           DEST="$(nvm_alias "$ALIAS" 2> /dev/null)" | ||||||
|           if [ -n "$DEST" ]; then |           if [ -n "$DEST" ]; then | ||||||
|             VERSION="$(nvm_version "$DEST")" |             VERSION="$(nvm_version "$DEST")" | ||||||
| @@ -2291,18 +2293,18 @@ $NVM_LS_REMOTE_POST_MERGED_OUTPUT" | command grep -v "N/A" | command sed '/^$/d' | |||||||
|       fi |       fi | ||||||
|       if [ -z "${3-}" ]; then |       if [ -z "${3-}" ]; then | ||||||
|         command rm -f "$NVM_ALIAS_DIR/$2" |         command rm -f "$NVM_ALIAS_DIR/$2" | ||||||
|         echo "$2 -> *poof*" |         echo "${2-} -> *poof*" | ||||||
|         return |         return | ||||||
|       fi |       fi | ||||||
|       VERSION="$(nvm_version "$3")" |       VERSION="$(nvm_version "${3-}")" | ||||||
|       if [ $? -ne 0 ]; then |       if [ $? -ne 0 ]; then | ||||||
|         echo "! WARNING: Version '$3' does not exist." >&2 |         echo "! WARNING: Version '${3-}' does not exist." >&2 | ||||||
|       fi |       fi | ||||||
|       echo "$3" | tee "$NVM_ALIAS_DIR/$2" >/dev/null |       echo "$3" | tee "$NVM_ALIAS_DIR/${2-}" >/dev/null | ||||||
|       if [ ! "_$3" = "_$VERSION" ]; then |       if [ ! "_$3" = "_$VERSION" ]; then | ||||||
|         echo "$2 -> $3 (-> $VERSION)" |         echo "${2-} -> ${3-} (-> $VERSION)" | ||||||
|       else |       else | ||||||
|         echo "$2 -> $3" |         echo "${2-} -> ${3-}" | ||||||
|       fi |       fi | ||||||
|     ;; |     ;; | ||||||
|     "unalias" ) |     "unalias" ) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user