How to add another repo/remote to the same folder directory
Overview
Usually all source code version control is done inside our company repo but in some situations we need to publish the code to the customer’s repo when a new version is ready to production.
It’s not rare to send over the code zipped but then the customer will not be able to track the changes made on those files.
But now that DevOps concepts is on the spot we are also entitled to publish the release version to the customers’ repo and this action will trigger some code analysis, tests, and deployment!
So why not push the code/branch directly to customer’s repo maintaining the commits that had been made during development.
Solução
In this post I’ll use two repos that I created previously:
- One on GitHub as “primary” (Consulting);
- Another one on Azure DevOps as “secondary” (Customer).
I’ve published a .NET Core project with some initial commits on GitHub’s repo:
Now, to push these files to Azure DevOps repo with the commits history we need to add another remote to our local repo:
- Git remote add <alias> <remote-git-url>
To push the “secondary” repo:
- Git push secondary
Done! We can see our code (with history) on Azure DevOps repo!
Como adicionar outro repositório ao mesmo diretório de arquivos usando git
Overview
Normalmente todo controle de código é feito no repositório da consultoria, mas em algumas situações é necessário entregar a versão do código no repositório do cliente nos releases para produção.
Nessa ocasiações é comum enviar um arquivo .zip para o cliente, mas com o cliente não tem um controle ou uma visão dos commits realizados naquela versão.
Mais importante ainda, o ideal é que quando há uma esteira de implantação e promoção do código em questão para os ambientes de qualidade, staging e produção possamos realizar o commit to código e iniciar um gatilho de análise, testes e deployment do código.
Como fazer para dar commit/push do mesmo código em repositórios diferentes? A solução é adicionar diversos “remote” no seu repositório local.
Solução
Neste post utilizarei dois repositórios que criei previamente:
- 1 no GitHub como “primário” (consultoria);
- Outro no Azure DevOps como “secundário” (cliente).
Eu já criei um projeto .NET Core no meu computador e já publiquei versões iniciais no repositório do GitHub:
Agora, para enviar este mesmo repositório para outro repositório, com o histórico de commits, adicionamos outro remote ao nosso repositório local:
- Git remote add <alias> <remote-git-url>
Para atualizar o repositório secundário:
- Git push secondary
Agora temos os código no repositório secundário, com o histórico de commits!