Eu tenho um diretório não vazio (por exemplo, / etc / something) com arquivos que não podem ser renomeados, movidos ou excluídos.
Quero verificar este diretório no git no lugar.
Eu quero poder enviar o estado deste repositório para um repositório remoto (em outra máquina) usando "git push" ou algo semelhante.
Isso é trivial usando o Subversion (atualmente o fazemos usando o Subversion) usando:
svn mkdir <url> -m <msg>
cd <localdir>
svn co <url> .
svn add <files etc>
svn commit -m <msg>
Qual é o equivalente do git?
Posso "clonar git" em um diretório vazio e simplesmente mover o diretório .git e fazer com que tudo funcione?
git init
dentro do diretório local?Respostas:
Como você configurou um daemon git
<url>
e um repositório vazio:fonte
git config branch.master.remote origin
egit config branch.master.merge refs/heads/master
o que acabarei será exatamente o mesmo como se eu clonasse o repositório remoto? ou seja,git pull
e sógit push
vai funcionar ?AppName
no GitHub. Não estava claro para mim o que exatamente os<url>
meios. Portanto, para aqueles que têm a mesma pergunta, nós simplesmente usamos o GitHub.com, não estamos executando nosso repositório e, em seguida, o<url>
usado na 5ª linha era algo parecido com isto:https://github.com/CompanyName/AppName
git pull origin master --allow-unrelated-histories
fazer uma mesclagem.É assim que eu faço. Eu adicionei explicações para entender o que diabos está acontecendo.
Inicializar repositório local
primeiro inicialize o Git com
Adicione todos os arquivos para controle de versão com
Crie uma confirmação com a mensagem de sua escolha
Inicializar repositório remoto
Crie um projeto no GitHub e copie a URL do seu projeto. como mostrado abaixo:
Vincular repositório remoto com repositório local
Agora use o URL copiado para vincular seu repositório local ao repositório remoto do GitHub. Quando você clona um repositório com o git clone, ele cria automaticamente uma conexão remota chamada origem, apontando de volta para o repositório clonado. O comando remote é usado para gerenciar o conjunto de repositórios rastreados.
Sincronizar
Agora precisamos mesclar código local com código remoto. Esta etapa é crítica, caso contrário não poderemos enviar código no GitHub. Você deve chamar 'git pull' antes de enviar seu código.
Confirme seu código
Por fim, empurre todas as alterações no GitHub
fonte
Aqui está a minha solução:
fonte
.gitignore
&README.dm
Caso o repositório remoto não esteja vazio (este é o caso se você estiver usando o IBM DevOps no hub.jazz.net), será necessário usar a seguinte sequência:
EDIT 30 de janeiro 17: Por favor, veja os comentários abaixo, verifique se você está no repo correto!
fonte
Quando um repositório do github não está vazio, como .gitignore e license
Use pull - permita histórias não relacionadas e push --force-with-lease
Use comandos
fonte
git push -u origin master --force-with-lease
A maneira mais simples de fazer isso que acho útil é a abaixo.
Pode não ser o caminho oficial, mas funciona bem.
Suponha que você tenha um projeto chamado "
XYZ
" no seu PC. Agora você deseja fazer um repositório git deste projeto no github e usar suas funcionalidades.Etapa 1 : vá para "
www.github.com
"Etapa 2 : crie um repositório com um
README.md
arquivo " " (nomeie como quiser)Etapa 3 : clonar o repositório no seu PC.
Etapa 4 : Na pasta clonada, você terá duas coisas: "
.git
" pasta e umREADME.md
arquivo " ". Copie esses dois na pasta do projeto "XYZ
".Etapa 5 : exclua o repositório clonado.
Etapa 6 : adicione, confirme e envie todos os arquivos e pastas do seu projeto.
Agora, você pode apenas usar seu projeto "
XYZ
" como um repositório git.fonte
Eu tive um problema parecido. Criei um novo repositório, NÃO NO DIRETÓRIO QUE EU QUERIA FAZER UM REPOSITÓRIO . Em seguida, copiei os arquivos criados no diretório em que desejava criar um repositório. Em seguida, abra um repositório existente usando o diretório para o qual acabei de copiar os arquivos.
NOTA: Eu usei o github desktop para criar e abrir o repositório existente.
fonte
Aqui está minha solução se você criou o repositório com algum padrão
readme file
oulicense
fonte