Tenho que mover servidores e preciso de uma maneira de empacotar meu repositório git. Todos os branches, tags e pipeline de CI/CD. Eu usei o git bundle no passado, mas ele empacota apenas um único branch. Existe uma maneira de empacotar e compactar todos os branches, tags e pipelines do repositório?
relate perguntas
-
Acidentalmente, cliquei em um botão que excluiu todos os commits feitos para um site, mas tenho um backup no meu computador - como restaurar? [fechado]
-
Modificando autores e utilizando Git Rebase em fluxos de trabalho colaborativos
-
Como imprimir facilmente as informações padrão do autor do Git?
-
Qual é a maneira certa de extrair minhas alterações do gitlab para o servidor remoto?
-
Posso rebasear e mesclar uma solicitação pull para uma ramificação que bloqueia push e commits não assinados?
Há muitas maneiras de transferir o repositório completamente. Espelhar-enviar para um repositório em qualquer servidor que você possa criar um repositório:
git push --mirror remote-repo
; depois clonar o repositório enviado de volta. Config e hooks não são enviados, você precisa transferi-los manualmente.Você pode usar
git bundle
, ele permite agrupar qualquer número de referências, veja a documentação paragit bundle create
e git-rev-list-args . Tente isto:git bundle create repo.bundle $(git rev-parse --abbrev-ref=loose --all)
. Config e hooks ainda não estão agrupados.A solução mais completa é compactar o
.git
diretório inteiro:zip -r repo.zip .git
. Tudo estará no arquivo, exceto os arquivos não preparados.