Eu sou muito novo no uso do git e queria saber se não há problema em copiar um repositório Git com comandos comuns do UNIX (como cp
ou tar
/ untag
), em vez de através git clone
.
Estou na situação em que tenho um ambiente de produção (python virtual) em que algum código foi verificado no git. Gostaria de saber se é uma má idéia, do ponto de vista do git, copiar todo o ambiente usando um tar
ou algo assim. Essa abordagem seria conveniente para fazer uma cópia rápida de uma base de código / ambiente.
Minha preocupação é que talvez o git clone associe algum ID exclusivo à cópia de trabalho que possa causar conflitos se existirem duas cópias de trabalho em que uma foi copiada do sistema de arquivos da outra.
Respostas:
Está perfeitamente bem.
git
armazena toda a sua história, confirmações etc. no local - essa é uma propriedade fundamental de um DCVS.Tecnicamente falando,
git
pode funcionar muito bem com repositórios copiados correndo ao redor em toda parte, porque o ponto inteiro de um DCV são é que ele não tem que saber o que está acontecendo do lado de fora de um determinado repositório , e na verdade não a menos que você diga a ele .O mesmo princípio se aplica aqui.
fonte
git remote remove origin
, o que impede o Git de usar o repositório pai como um upstream.Você deve copiar todo o diretório ativo para qualquer outro lugar no sistema e continuar funcionando normalmente ao usar Git, Hg ou SVN. Não posso comentar sobre outros SCMs.
fonte
Este é um caso de uso mais incomum, mas ...
Eu já vi o
repo
utilitário criar links simbólicos no.git
diretório Nesse caso, quando você estiver fazendo uma cópia, certifique-se de remover a referência de links simbólicos. Por exemplo:fonte
Tudo bem, mas se você estiver prestes a compartilhar seu repo com outra pessoa, considere o seguinte :
config
arquivo pode ter controles remotos que a outra pessoa pode não se importar.logs
pasta terá referências que talvez você não queira compartilhar. O Git é ótimo em permitir que você faça coisas desagradáveis no computador até se sentir confortável com o resultado final e, em seguida, empurre-o para o controle remoto para (ocasionalmente) compartilhá-lo. Parte dessa história desagradável pode estar no seu reflog, por isso é melhor não compartilhá-lo no IMHO.info/exclude
arquivo pode estar ignorando alguns arquivos que apenas você deseja ignorar.fonte