La mejor herramienta de línea de comandos para instalar y cambiar entre múltiples versiones de Xcode.
Si está buscando una versión de aplicación de xcodes
, pruebe Xcodes.app.
Xcodes ahora es parte de XcodesOrg
- lea más aquí
brew install xcodesorg/made/xcodes
Estas son compilaciones de lanzamiento firmadas por ID de desarrollador y certificadas ante notario y no requieren que Xcode ya esté instalado para poder usarlas.
Otros métodos:
Descargue la última versión desde la página de Lanzamientos. Estas son versiones de lanzamiento firmadas con ID de desarrollador y no requieren que Xcode ya esté instalado para poder usarlas.
mint install XcodesOrg/xcodes
La compilación desde el código fuente requiere Xcode 12.0 o posterior, por lo que no es una opción para configurar una computadora desde cero.
git clone https://github.com/XcodesOrg/xcodes
cd xcodes
make install
# or, if /usr/local/ isn't in your PATH
PREFIX=/your/install/directory make install
Durante la instalación, es posible que obtenga el siguiente resultado:
swift build
error: terminated(72): xcrun --sdk macosx --find xctest output:
Si eso ocurre, significa que debes seleccionar una versión de Xcode. Puede hacer esto con xcode-select
o eligiendo una opción de Herramientas de línea de comandos en la pestaña Ubicaciones de preferencias de Xcode.
Instale una versión específica de Xcode usando un comando como uno de estos:
xcodes install 10.2.1
xcodes install 11 Beta 7
xcodes install 11.2 GM seed
xcodes install 9.0 --path ~ /Archive/Xcode_9.xip
xcodes install --latest-prerelease
xcodes install --latest --directory " /Volumes/Bag Of Holding/ "
xcodes install --latest --experimental-unxip
Luego se le pedirá que ingrese su nombre de usuario y contraseña de ID de Apple. También puede proporcionarles las variables de entorno XCODES_USERNAME
y XCODES_PASSWORD
.
Después de autenticarse exitosamente, xcodes guardará la contraseña de su ID de Apple en el llavero y recordará su ID de Apple para uso futuro. Si necesita utilizar una ID de Apple diferente a la que recuerda, configure la variable de entorno XCODES_USERNAME
.
xcodes descargará e instalará la versión que solicitó para que esté lista para usar.
(1/6) Downloading Xcode 11.2.0: 100%
(2/6) Unarchiving Xcode (This can take a while)
(3/6) Moving Xcode to /Applications/Xcode-11.2.0.app
(4/6) Moving Xcode archive Xcode-11.2.0.xip to the Trash
(5/6) Checking security assessment and code signing
(6/6) Finishing installation
xcodes requires superuser privileges in order to finish installation.
macOS User Password:
Xcode 11.2.0 has been installed to /Applications/Xcode-11.2.0.app
Si tiene aria2 instalado (está disponible en Homebrew, brew install aria2
), xcodes lo usará de forma predeterminada para las descargas. Utiliza hasta 16 conexiones para descargar Xcode de 3 a 5 veces más rápido que URLSession.
Xcode se instalará en /Aplicaciones de forma predeterminada, pero puede proporcionar la ruta a un directorio diferente con la opción --directory
o la variable de entorno XCODES_DIRECTORY
. Todos los comandos de xcodes admiten esta opción, como select
y uninstall
, para que pueda administrar las versiones de Xcode que no están en /Aplicaciones. xcodes admite tener todas sus versiones de Xcode instaladas en un directorio, dondequiera que esté.
Ejecute esta línea de comando para mostrar los tiempos de ejecución disponibles
xcodes runtimes --include-betas
Instale el Runtime deseado (por ejemplo, iOS 17.0-beta1)
xcodes runtimes install " iOS 17.0-beta1 "
.xcode-version
Recomendamos la creación de un archivo .xcode-version
para declarar y almacenar explícitamente la versión de Xcode que utilizará su entorno de CI y su equipo.
13.4.1
Lea la propuesta de .xcode-version
.
download <version>
: descarga una versión específica de Xcodeinstall <version>
: descargue e instale una versión específica de Xcodeinstalled
: enumera las versiones de Xcode que están instaladaslist
: enumera todas las versiones de Xcode que están disponibles para instalarselect
: cambiar el Xcode seleccionadouninstall
: desinstalar una versión específica de Xcodeupdate
: actualiza la lista de versiones disponibles de Xcodeversion
: imprime el número de versión de xcodessignout
: borra el nombre de usuario y la contraseña almacenadosGracias al increíble trabajo de saagarjhi, Xcodes ahora incluye la capacidad de descomprimir hasta un 70% más rápido en algunos sistemas.
xcodes install --latest --experimental-unxip
xcodes puede generar scripts de finalización que le permiten presionar la tecla tab en su teclado para autocompletar comandos y argumentos al escribir un comando de xcodes. Los pasos para instalar un script de finalización dependen del shell que utilice. Más información sobre las instrucciones de instalación para diferentes shells y la implementación subyacente está disponible en el repositorio de swift-argument-parser.
Ejecute los siguientes comandos:
mkdir ~ /.oh-my-zsh/completions
xcodes --generate-completion-script > ~ /.oh-my-zsh/completions/_xcodes
Necesitará Xcode 13 para poder compilar y ejecutar xcodes.
Al ejecutar xcodes desde Xcode, si desea ejecutar un comando en particular o pasar algunos argumentos, puede mantener presionada la tecla de opción para presentar una hoja con más opciones. Esto significa que usaría Opción + Comando + R o mantendría presionada Opción mientras hace clic en el botón Ejecutar. Aquí puede agregar, eliminar y alternar argumentos que se pasarán a xcodes cuando se inicie.
swift build
swift run
o comandos como swift run xcodes list
swift test
Hay un Makefile para ayudar a crear xcodes para su distribución. Ya hacemos esto por usted para proporcionar compilaciones de lanzamiento firmadas por ID de desarrollador y certificadas ante notario a través de Homebrew (consulte Instalación).
# Bump the version number in Version.swift, commit the change, and tag it
vim Sources/XcodesKit/Version.swift
git add Sources/XcodesKit/Version.swift
git commit -m " Bump version to $VERSION "
git tag -asm " $VERSION " " $VERSION "
# Clean first
make clean
# Make a release build of xcodes, sign it, and zip it
make zip
# Create a Homebrew bottle
make bottle VERSION= " $VERSION "
# Notarize the release build
# This can take a while
make notarize
TEAMID= " ABC123 "
# Push the new version bump commit and tag
git push --follow-tags
# Edit the draft release created by Release Drafter to point at the new tag
# Set the release title to the new version
# Duplicate xcodes-$VERSION.mojave.tar.gz and rename to xcodes-$VERSION.arm64_mojave.tar.gz
# Add the xcodes.zip, xcodes-$VERSION.mojave.tar.gz, xcodes-$VERSION.arm64_mojave.tar.gz files to the release
# Publish the release
# Update the Homebrew Bottle: https://github.com/XcodesOrg/homebrew-made/blob/master/Formula/xcodes.rb
Las decisiones de diseño notables se registran en DECISIONS.md. El flujo de autenticación de Apple se describe en Apple.paw, que le permitirá jugar con los puntos finales API involucrados en el uso de la aplicación Paw.
xcode-install
y fastlane/spaceship merecen crédito por descubrir las partes difíciles que hacen esto posible.
Matt Kiazyk - Twitter