Importar código fonte existente para o GitHub

609

Como posso importar o código-fonte do meu computador para minha conta do GitHub?

Mohammad Ali Akbari
fonte
4
Eu achei mais fácil usar a GUI do GitHub e, em seguida, aponte a configuração para a raiz da sua área de trabalho e clique no botão "Encontrar Repostórios no seu Disco Rígido" e ele identificará todos os repositórios locais do Git na sua área de trabalho e permitirá importá-los individualmente. Fácil.
djangofan
1
@djangofan Qual GUI do github você está se referindo? Você tem um link para a GUI?
Anderson Green
3
windows.github.com
djangofan
A resposta de Pete funcionou muito bem no OS X - não é necessário usar uma GUI.
funroll

Respostas:

969

Se você tiver o código-fonte local que deseja adicionar a um novo repositório git novo e remoto sem antes 'clonar' o remoto, faça o seguinte (geralmente faço isso - você cria seu repositório vazio e remoto no bitbucket / github e depois pressiona sua fonte)

  1. Crie o repositório remoto e obtenha o URL como [email protected]:/youruser/somename.gitouhttps://github.com/youruser/somename.git

    Se o seu repositório GIT local já estiver configurado, pule as etapas 2 e 3


  2. Localmente, no diretório raiz da sua fonte, git init

    2a Se você inicializar o repositório com um .gitignore e um README.md, deverá fazer um git pull {url from step 1}para garantir que não confirme os arquivos na origem que deseja ignorar;)

  3. Localmente, adicione e confirme o que deseja em seu repo inicial (para tudo, git add .então git commit -m 'initial commit comment')


  4. para anexar seu repositório remoto com o nome 'origem' (como faria a clonagem)
    git remote add origin [URL From Step 1]

  5. Execute git pull origin masterpara puxar a ramificação remota para que eles estejam sincronizados.
  6. para empurrar sua ramificação principal (mude a master para outra coisa para uma ramificação diferente):
    git push origin master
Pedro
fonte
92
Trabalhou para mim. Eu descobri que precisava correr git pull origin masterantes do git push. Sem ele, recebi o erro "porque a ponta do seu ramo atual está atrasado" durante a tentativa de envio. Talvez tenha sido porque eu criei o repositório remoto com um arquivo Leiame.md inicial.
yuvilio 26/07/12
5
Obtenha o URL do repositório para o protocolo SSH poder confirmar usando suas chaves privadas ssh em vez de digitar uma senha.
Snicolas 22/09/12
5
@yuvilio é exatamente por isso. Se você criar seu repositório no github com um readme.md, agora estará realmente por trás do que está tentando criar sua origem.
7
Como o @Snicolas disse, se você usa SSH, use [email protected]: youruser / somename.git em vez de git: //github.com/youruser/somename.git.
Tsusanka #
5
O GitHub explica esse mesmo procedimento imediatamente após a criação de um novo repositório. Como já foi dito por @yuvilio, você não deve inicializar seu repositório com um README. Em vez disso, vá com o touch README.mdseu repo local existente
Simone
41

Isso é explicado no excelente eBook ProGit gratuito . Ele pressupõe que você já possui um repositório Git local e um remoto. Para conectá-los, use:

$ git remote
origin
$ git remote add pb git://github.com/paulboone/ticgit.git
$ git remote -v
origin    git://github.com/schacon/ticgit.git
pb    git://github.com/paulboone/ticgit.git

Para enviar os dados do repositório local para o GitHub, use:

$ git push pb master

Se você ainda não configurou um repositório local e / ou remoto, consulte a ajuda no GitHub e nos capítulos anteriores do livro .

Gordon
fonte
21

Um dos comentários mencionados foi o uso da GUI do GitHub, mas não deu nenhuma ajuda específica ao uso e observe que a maioria, senão todas as respostas, foram úteis apenas no prompt de comando.

Se você deseja usar a GUI do GitHub, siga estas etapas:

  1. Clique no botão "+" e escolha "Adicionar repositório local" Digite a descrição da imagem aqui
  2. Navegue até o diretório com o código existente e clique no botão "Adicionar".
  3. Agora você deve ser solicitado a "Criar um novo repositório Git local aqui", então clique no botão "Sim". Digite a descrição da imagem aqui
  4. Adicione seu "Resumo de Confirmação" e "Descrição Estendida", conforme desejado. Por padrão, todos os seus arquivos já devem estar selecionados com marcas de seleção. Clique no botão "Confirmar e sincronizar". Digite a descrição da imagem aqui
  5. Agora, você será solicitado a adicionar o nome e a descrição do seu projeto, bem como em qual conta enviar por push (se você tiver vários). Clique no botão "Push Repository" Digite a descrição da imagem aqui

Após um momento com um ícone giratório do GitHub, seu código-fonte pertencerá a um repositório local e será enviado / sincronizado com um repositório remoto na sua conta do GitHub. Tudo isso pressupõe que você configurou anteriormente a GUI do GitHub, sua conta do GitHub e as chaves SSH.

cfont
fonte
@cfont Isso mantém o longo histórico que já existe no meu repositório local ou apenas cria um commit enorme e eu perdi todo o meu histórico?
precisa saber é o seguinte
1
@theJollySin, desculpe, eu preciso trabalhar para que minhas notificações de stackoverflow funcionem corretamente, suponho. Isso deve manter o histórico do seu repositório local existente. TBH, eu não testei isso na época, mas não consigo pensar em uma razão para esmagar seu histórico local. De fato, o ponto principal deve ser reter isso, a menos que você realmente queira esmagar os commits.
24/16
12

Como o JB indica, com razão, é incrivelmente fácil no GitHub simplesmente seguindo as instruções.

Aqui está um exemplo das instruções exibidas após a configuração de um novo repositório no GitHub usando http://github.com/new quando você estiver conectado.

Global setup:

 Set up Git:
  git config --global user.name "Name"
  git config --global user.email [email protected]


Next steps:

  mkdir audioscripts
  cd audioscripts
  git init
  touch README
  git add README
  git commit -m 'first commit'
  git remote add origin [email protected]:ktec/audioscripts.git
  git push -u origin master


Existing Git repository?

  cd existing_git_repo
  git remote add origin [email protected]:ktec/audioscripts.git
  git push -u origin master


Importing a Subversion repository?

  Check out the guide for step-by-step instructions.

Não poderia ser mais fácil !!

ktec
fonte
8

Eu tive alguns problemas com a fusão ao tentar executar os passos de Pete. Estes são os passos que acabei com.

  1. Use seu sistema operacional para excluir a .gitpasta dentro da pasta do projeto que você deseja confirmar. Isso lhe dará uma forma limpa de trabalhar. Este também é um bom momento para criar um .gitignorearquivo dentro da pasta do projeto. Pode ser uma cópia do .gitignorecriado quando você criou o repositório no github.com. Fazer essa cópia evitará excluí-la quando você atualizar o repositório do github.com.

  2. Abra o Git Bash e navegue até a pasta da qual você acabou de excluir .git.

  3. Corra git init. Isso configura um repositório local na pasta em que você está.

  4. Corra git remote add [alias] https://github.com/[gitUserName]/[RepoName].git. [alias] pode ser o que você quiser. O [alias] deve ser vinculado ao repositório local, portanto o nome da máquina funciona bem para um [alias]. A URL pode ser encontrada no github.com e, na parte superior, verifique se o botão HTTP de HTTP | SSH | Git Somente leitura é clicado. O git://URL não funcionou para mim.

  5. Corra git pull [alias] master. Isso atualizará seu repositório local e evitará alguns conflitos de mesclagem.

  6. Corre git add .

  7. Corre git commit -m 'first code commit'

  8. Corre git push [alias] master

ShawnFeatherly
fonte
1
-1 Isso faz um pouquinho mais do que apenas "importar código existente para o github". ele exclui todo o histórico do repositório!
quer
6
  1. Abra o painel do GitHub (em https://github.com/ se você estiver conectado)
  2. Clique em Novo Repositório
  3. Preencher os espaços; clique em Criar Repositório
  4. Siga as instruções na página que aparece em seguida
JB.
fonte
6

Partida Bitbucket:

Empurre um repositório existente. Você já tem um repositório Git no seu computador. Vamos passar para o Bitbucket:

cd /path/to/my/repo
git remote add origin ssh://[email protected]/javacat/geo.git
git push -u origin --all   # To push up the repo for the first time
Fengbo
fonte
1
fyi, -u é o mesmo que --set-upstream.
AnneTheAgile
4

Eu vim aqui procurando uma maneira simples de adicionar arquivos de origem existentes a um repositório do GitHub. Vi a resposta excelente de Pete e pensei "O quê ?! Deve haver uma maneira mais simples".

Aqui está a maneira mais simples em cinco etapas (nenhuma ação do console é necessária!)

Se você estiver realmente com pressa, basta ler a etapa 3. Os outros estão lá apenas para garantir a integridade.

  1. Crie um repositório no site do GitHub. (Não vou insultar sua inteligência, guiando você passo a passo.)
  2. Clone o novo repositório localmente. (Você pode fazer isso pelo site ou pelo software cliente de desktop.)
  3. Encontre o repositório recém-clonado no disco rígido e adicione arquivos como faria em um diretório normal.
  4. Sincronize as alterações com o GitHub.
  5. É isso aí!

Feito!

LondonRob
fonte
4

Adicione um repositório GitHub como origem remota (substitua [] pelo seu URL):

git remote add origin [[email protected]:...]

Alterne para o seu ramo principal e copie-o para desenvolver o ramo:

git checkout master
git checkout -b develop

Envie seu ramo de desenvolvimento para o ramo de desenvolvimento do GitHub ( -fsignifica força):

git push -f origin develop:develop
Serge Seletskyy
fonte
3

Na verdade, se você optar por criar um repositório vazio no GitHub, ele fornece instruções exatas que você quase pode copiar e colar no terminal, que são (neste momento):

…or create a new repository on the command line

echo "# ..." >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin [email protected]:<user>/<repo>.git
git push -u origin master
thoni56
fonte
2

Aqui estão algumas instruções sobre como iniciar um repositório GitHub e depois enviar o código que você já criou para ele. O primeiro conjunto de instruções é diretamente do GitHub.

Fonte: https://help.github.com/articles/create-a-repo/

  1. No canto superior direito de qualquer página, clique em Novo repositório .

  2. Crie um nome curto e memorável para o seu repositório. Por exemplo, "olá mundo".

  3. Opcionalmente, adicione uma descrição do seu repositório. Por exemplo, "Meu primeiro repositório no GitHub".

  4. Escolha entre criar um repositório público ou privado.

  5. Inicialize este repositório com um README.

  6. Crie repositório.

Parabéns! Você criou com sucesso seu primeiro repositório e o inicializou com um arquivo README.

Agora, após essas etapas, você desejará enviar o código no seu computador local até o repositório que você acabou de criar e siga estas etapas:

  1. git init (na pasta raiz onde seu código está localizado)

  2. git add -A (isso adicionará todos os arquivos e pastas do seu diretório a serem confirmados)

  3. git commit -am "First Project commit"

  4. git remote add origin [email protected]:YourGithubName/your-repo-name.git (você encontrará esse endereço no repositório do GitHub que acabou de criar em "URL do clone ssh" na página principal)

  5. git push -u origin master

É isso aí. Seu código agora será enviado para o GitHub. Agora, toda vez que você quiser continuar pressionando o código que mudou, basta fazê-lo.

  1. git commit -m "New changes"

  2. git push origin master (se master for o ramo em que você está trabalhando)

rii
fonte
1

Solução para mim:

O problema é o tamanho de um arquivo, que não pode exceder 100M.

Antes de migrar para o github, no repositório, faça o seguinte:

git clone --mirror git://example.com/some-big-repo.git

wget http://repo1.maven.org/maven2/com/madgag/bfg/1.12.12/bfg-1.12.12.jar

mv bfg-1.12.12.jar bfg.jar

java -jar bfg.jar --strip-blobs-bigger-than 100M some-big-repo.git

cd some-big-repo.git

git reflog expire --expire=now --all && git gc --prune=now --aggressive

git push

Pronto!

Agora faça a migração novamente pela ferramenta: https://github.com/new/import

veja mais: Erro ao empurrar para o repositório github e https://rtyley.github.io/bfg-repo-cleaner/

Espero ter ajudado você. :)

frekele
fonte
0

Crie seu repositório no git hub

Permitir rastrear seu projeto pelo GIT

  1. usando o CMD, vá para a pasta em que o arquivo do seu projeto é mantido-> cd / automation / xyz / codebase verifique se há inicialização do git com o comando git status Se você receber esta mensagem de erro: fatal: Não é um repositório do git (ou qualquer um dos diretórios pai): .git, significa que a pasta em que você está atualmente não está sendo rastreada pelo git. Nesse caso, inicialize o git dentro da pasta do seu projeto digitando git init, passando pelo processo de adicionar e confirmar seu projeto.

Se você receber outra mensagem de erro, leia atentamente o que diz. Está dizendo que o git não está instalado no seu computador dizendo que a palavra 'git' não é reconhecida? Está dizendo que você já está em uma pasta ou subpasta onde o git é inicializado? Pesquise no Google seu erro e / ou saída para entendê-lo e descobrir como corrigi-lo.

agora execute o seguinte comando

#

echo "nome do repositório do seu git hub" >> README.md git init git add README.md git commit -m "primeiro commit" git remote add origin https: // #

bloco acima, você receberá quando abrir o repositório pela primeira vez

Se ocorrer um erro ou nada acontecer após o último comando, execute "git push -u origin master" não se preocupe

vá para a pasta onde o código está disponível e, através da extensão git, empurre-o para git [URL], branch

Vinay Pratap
fonte