Usar git fetch --dry-run
Na etapa anterior, usamos git ls-remote para ver quais referências estão disponíveis em um repositório remoto. Agora, vamos explorar como usar git fetch --dry-run.
O comando git fetch é usado para baixar commits, arquivos e refs de um repositório remoto para seu repositório local. No entanto, ele não mescla ou modifica automaticamente seus arquivos de trabalho atuais. É como receber atualizações de outra máquina do tempo sem aplicá-las ainda.
Adicionar a opção --dry-run ao git fetch torna-o ainda mais seguro. Ele diz ao Git para mostrar o que aconteceria se você executasse git fetch sem realmente baixar nada ou fazer quaisquer alterações. É como pedir à sua máquina do tempo para simular uma viagem antes de você realmente ir.
Para usar git fetch --dry-run, você normalmente precisa de um repositório Git local que esteja configurado para rastrear um remoto. Como não temos um repositório configurado com um remoto ainda, não podemos usar diretamente git fetch --dry-run da maneira mais comum.
No entanto, ainda podemos demonstrar o conceito tentando buscar de uma URL remota diretamente, embora isso seja menos comum em fluxos de trabalho típicos. Vamos tentar buscar da URL do repositório Git novamente com a flag --dry-run.
Navegue até o diretório do seu projeto, se você ainda não estiver lá:
cd ~/project
Agora, execute o seguinte comando:
git fetch --dry-run https://github.com/git/git.git
Você deve ver uma saída semelhante a esta:
From https://github.com/git/git.git
* [new branch] master -> origin/master
... (potentially many more lines showing what would be fetched) ...
Esta saída mostra quais branches e tags seriam buscados do repositório remoto. As linhas que começam com * [new branch] indicam branches que existem no remoto, mas não localmente, e onde eles seriam armazenados localmente (por exemplo, origin/master).
A opção --dry-run é incrivelmente útil para visualizar as alterações que você receberia de um repositório remoto antes de realmente buscá-las. Isso ajuda você a entender quais atualizações estão disponíveis e evitar alterações inesperadas em seu repositório local.
Em um cenário do mundo real, você normalmente teria um remoto configurado (frequentemente chamado de origin) e executaria git fetch --dry-run origin dentro do seu repositório clonado. Isso mostraria as alterações disponíveis a partir desse remoto específico.