Com o Git / Github for Windows, se eu tiver um repositório com este diretório:, C:\dir1\dir2
o que preciso fazer para mover os arquivos de repo C:\dir1
? Obviamente, posso copiar e colar fisicamente os arquivos, mas o que preciso fazer no lado do Git?
Eu tenho esse repositório no GitHub e uso o Git Bash e o GitHub para Windows.
git
github
github-for-windows
Mikael Engver
fonte
fonte
Respostas:
Simplesmente copie todo o conteúdo do diretório ativo (incluindo o
.git
diretório oculto ). Isso moverá todo o diretório ativo para o novo diretório e não afetará o repositório remoto no GitHub.Se você estiver usando o GitHub for Windows, poderá mover o repositório usando o método acima. No entanto, quando você clica no repositório no aplicativo, ele não consegue encontrá-lo. Para resolver isso, basta clicar no círculo azul com o!, Selecione Localizar e, em seguida, navegue até o novo diretório.
fonte
Não tenho certeza da pergunta, então aqui estão duas respostas:
Se você deseja mover seu repositório:
Simplesmente copie o repositório inteiro (com seu
.git
diretório).Não há caminho absoluto na
.git
estrutura e nada impede que ela seja movida; portanto, você não precisa fazer nada depois da mudança. Todos os links para o github (veja em.git/config
) funcionarão como antes.Se você deseja mover arquivos dentro do repositório:
Simplesmente mova os arquivos. Em seguida, adicione as alterações listadas em
git status
. O próximocommit
fará o necessário. Você ficará feliz em saber que nenhum arquivo será duplicado: mover um arquivo no git é quase gratuito.fonte
.git
diretórioSe você estiver usando
GitHub Desktop
, execute as seguintes etapas:GitHub Desktop
e todos os outros aplicativos com arquivos abertos no caminho do diretório atual.GitHub Desktop
e clique no ícone azul (!) "Repositório não encontrado". Em seguida, uma caixa de diálogo será aberta e você verá o botão "Localizar ...", que abrirá um pop-up, permitindo que você direcione seu caminho para um novo local.fonte
Embora a questão envolva o Git para Windows, esse parece ser o principal resultado, mesmo ao pesquisar as Ferramentas do Visual Studio para Git (extensão no VS 2012, suporte nativo no VS 2013).
Usando as soluções acima como guia, determinei que o Visual Studio Git Tools facilita muito a movimentação de repositórios (ou mesmo a estrutura de diretórios inteira de todos os repositórios) localmente.
1) Feche o Visual Studio. 2) Mova as pastas de repositório para um novo local. 3) Abra o Visual Studio. Abra o Team Explorer. Mude para a visualização "Conectar" (conecte o ícone na parte superior). 3a) Se os repositórios ainda mostrarem o caminho antigo, clique em Atualizar para forçar uma atualização. 4) Os repositórios que foram movidos localmente não devem mais ser exibidos em " Local Git Repositories ". 5) Clique em Adicionar (não é novo ou clone) e selecione a pasta de recompra a ser adicionada.
Na etapa 5, você realmente está apenas fornecendo um caminho de pesquisa e a pesquisa inclui automaticamente todas as subpastas. Se você tiver vários repositórios organizados em uma única raiz (repositórios independentes apenas com a mesma pasta pai), a seleção do pai incluirá todos os repositórios encontrados abaixo.
Exemplo: E: \ Repos \ RepoA E: \ Repos \ RepoB E: \ Repos \ RepoC
No Visual Studio Team Explorer [Adicionar]> "E: \ Repos \"> [Adicionar] retornará todos os três para os repositórios locais.
fonte
Embora todas as respostas anteriores pareçam dizer que você pode simplesmente mover o diretório e não há caminhos absolutos na estrutura .git. Achei isso falso, ao usar o git do Cygwin.
Quando mudei meu repositório git (na verdade, eu o restaurei de um backup, mas para uma unidade diferente conforme minha estrutura de unidades mudou no meu novo sistema). Recebi uma mensagem de erro como
Eu usei o grep para descobrir que no meu arquivo .git / config na seção [core] é uma variável da árvore de trabalho que contém o caminho absoluto do meu repositório git. Alterar isso corrigiu o problema para mim.
fonte
Eu uso o plug-in git do Visual Studio e tenho alguns sites em execução no IIS que queria mover. Uma maneira simples que funcionou para mim:
Feche o Visual Studio.
Mova o código (incluindo a pasta git, etc)
Clique no arquivo da solução no novo local
Isso atualiza o mapeamento para o novo local, usando os arquivos git locais existentes que foram movidos. Quando voltei ao Visual Studio, minha janela do Team Explorer mostrou os repositórios no novo local.
fonte
Eu uso o Github Desktop para Windows e queria mover a localização de um repositório. Não há problema se você mover seu diretório e escolher o novo local no software. Mas se você definir um diretório incorreto, receberá um erro fatal e não terá uma segunda chance de realocar o bom. Então, para reparar isso. Você deve copiar os arquivos do projeto no diretório incorreto, reconfigurá-lo pelo Github Desktop; depois disso, você pode mover novamente o seu projeto em outra pasta e realocar no software. Não é necessário fechar o Github Desktop para isso, ele verificará as pastas ao vivo.
Esperando que isso ajude alguém.
fonte
Isto não funcionou para mim. Mudei um repositório de (por exemplo) c: \ project1 \ para c: \ repo \ project1 \ e o Git for windows não mostra nenhuma alteração.
O status git mostra um erro porque um dos submódulos "não é um repositório git" e mostra o caminho antigo. por exemplo (nomes alterados para proteger o IP)
fatal: Não é um repositório git: C: /project1/.git/modules/subproject/subproject2 fatal: 'git status --porcelain' falhou no subprojeto do submódulo
Eu tive que editar manualmente os arquivos .git nos submódulos para apontar para o caminho relativo correto para o repositório do submódulo (no diretório .git / modules do repositório principal)
fonte
Relatório do futuro: abril de 2018.
Eu queria normalizar meus repositórios locais no Mac e no Windows, que acabaram em diferentes pastas locais.
O cliente Windows 10 me fez passar pela rotina "Não é possível encontrar"> "Localizar", tediosa, mas não terrível. Também é necessário atualizar o "caminho Clone" local em Opções para uso futuro.
Quando consolidei as pastas do Mac, o cliente Github as encontrou novamente - eu não precisava fazer nada!
fonte
Para definir o caminho local padrão para seus repositórios toda vez que você clonar um deles, você deve clonar um repositório apenas uma vez e definir Localpath: / your-path, para que o github detecte automaticamente esse caminho como padrão.
fonte
Uma abordagem mais baseada em Git seria fazer as alterações em sua cópia local usando
cd
ou copiando e colando e, em seguida, enviando essas alterações do repositório local para o remoto.Se você tentar verificar o status do seu repositório local, ele poderá mostrar "alterações não rastreadas", que são realmente os arquivos realocados. Para forçar essas alterações com força, você precisa preparar esses arquivos / diretórios usando
Espero que ajude.
fonte