A melhor ferramenta de linha de comando para instalar e alternar entre várias versões do Xcode.
Se você está procurando uma versão de aplicativo de xcodes
, experimente Xcodes.app.
Xcodes agora faz parte do XcodesOrg
- leia mais aqui
brew install xcodesorg/made/xcodes
Estas são compilações de lançamento assinadas pelo Developer ID e autenticadas e não exigem que o Xcode já esteja instalado para serem usadas.
Outros métodos:
Baixe a versão mais recente na página Lançamentos. Estas são compilações de lançamento assinadas pelo Developer ID e não exigem que o Xcode já esteja instalado para serem usadas.
mint install XcodesOrg/xcodes
A compilação a partir do código-fonte requer o Xcode 12.0 ou posterior, portanto, não é uma opção para configurar um computador do zero.
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 a instalação, você pode obter a seguinte saída:
swift build
error: terminated(72): xcrun --sdk macosx --find xctest output:
Se isso ocorrer, significa que você precisa selecionar uma versão do Xcode. Você pode fazer isso com xcode-select
ou escolhendo uma opção Ferramentas de linha de comando na guia Locais de preferências do Xcode.
Instale uma versão específica do Xcode usando um comando como um destes:
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
Em seguida, você será solicitado a inserir seu nome de usuário e senha do ID Apple. Você também pode fornecer as variáveis de ambiente XCODES_USERNAME
e XCODES_PASSWORD
.
Após a autenticação bem-sucedida, o xcodes salvará a senha do seu ID Apple no chaveiro e se lembrará do seu ID Apple para uso futuro. Se você precisar usar um ID Apple diferente daquele lembrado, defina a variável de ambiente XCODES_USERNAME
.
O xcodes baixará e instalará a versão solicitada para que esteja pronta para uso.
(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
Se você tiver o aria2 instalado (está disponível no Homebrew, brew install aria2
), então o xcodes usará o padrão para downloads. Ele usa até 16 conexões para baixar o Xcode 3 a 5x mais rápido que o URLSession.
O Xcode será instalado em /Applications por padrão, mas você pode fornecer o caminho para um diretório diferente com a opção --directory
ou a variável de ambiente XCODES_DIRECTORY
. Todos os comandos xcodes suportam esta opção, como select
e uninstall
, para que você possa gerenciar versões do Xcode que não estão em /Applications. xcodes suporta ter todas as suas versões do Xcode instaladas em um diretório, onde quer que esteja.
Execute esta linha de comando para exibir os tempos de execução disponíveis
xcodes runtimes --include-betas
Instale o Runtime desejado (ex. iOS 17.0-beta1)
xcodes runtimes install " iOS 17.0-beta1 "
.xcode-version
Recomendamos a criação de um arquivo .xcode-version
para declarar e armazenar explicitamente a versão do Xcode a ser usada pelo seu ambiente de CI e também pela sua equipe.
13.4.1
Leia a proposta do .xcode-version
.
download <version>
: Baixe uma versão específica do Xcodeinstall <version>
: Baixe e instale uma versão específica do Xcodeinstalled
: lista as versões do Xcode que estão instaladaslist
: lista todas as versões do Xcode que estão disponíveis para instalaçãoselect
: Alterar o Xcode selecionadouninstall
: desinstalar uma versão específica do Xcodeupdate
: Atualize a lista de versões disponíveis do Xcodeversion
: Imprime o número da versão do próprio xcodessignout
: Limpa o nome de usuário e senha armazenadosGraças ao incrível trabalho de saagarjhi - o Xcodes agora inclui a capacidade de descompactar até 70% mais rápido em alguns sistemas.
xcodes install --latest --experimental-unxip
xcodes pode gerar scripts de conclusão que permitem que você pressione a tecla tab no teclado para preencher automaticamente comandos e argumentos ao digitar um comando xcodes. As etapas para instalar um script de conclusão dependem do shell usado. Mais informações sobre instruções de instalação para diferentes shells e a implementação subjacente estão disponíveis no repositório do analisador de argumentos rápido.
Execute os seguintes comandos:
mkdir ~ /.oh-my-zsh/completions
xcodes --generate-completion-script > ~ /.oh-my-zsh/completions/_xcodes
Você precisará do Xcode 13 para construir e executar xcodes.
Ao executar xcodes do Xcode, se quiser executar um comando específico ou passar alguns argumentos, você pode segurar a tecla de opção para apresentar uma planilha com mais opções. Isso significa que você usaria Option + Command + R ou seguraria Option enquanto clica no botão Executar. Aqui você pode adicionar, remover e alternar argumentos que serão passados para o xcodes quando ele for iniciado.
swift build
swift run
ou comandos como swift run xcodes list
swift test
Existe um Makefile para ajudar a construir xcodes para distribuição. Já fazemos isso para você, a fim de fornecer compilações de lançamento autenticadas e assinadas pelo Developer ID via Homebrew (consulte Instalação).
# 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
Decisões de design notáveis são registradas em DECISÕES.md. O fluxo de autenticação da Apple é descrito em Apple.paw, que permitirá que você brinque com os endpoints da API envolvidos no aplicativo Paw.
xcode-install
e fastlane/spaceship merecem crédito por descobrir as partes difíceis do que torna isso possível.
Matt Kiazyk - Twitter