“Sincronizando” arquivos entre o servidor local e remoto usando o Git

3

Meu objetivo pretendido :

Mantenho alguns arquivos no meu computador local e também os compartilho com outras pessoas colocando-os no meu site. No passado eu fiz isso manualmente carregando todos os arquivos usando FTP, toda vez que eu fiz algumas modificações, etc. Agora, eu estou querendo saber se eu posso usar o Git para me ajudar a conseguir isso ("empurrando" os arquivos locais para o servidor do meu site). ). Meu servidor é hospedado pelo Dreamhost.

Primeira tentativa :

Primeiro, eu tento este tutorial . Primeiro, envio meus arquivos locais para meu repositório do Github e ssh para o meu servidor Dreamhost para git clone --bare do repositório do Github. Mas acho que o git não transfere meus arquivos. Então eu ignoro o tutorial.

Segunda tentativa :

Eu ssh no meu servidor Dreamhost para clonar diretamente do Github. Meus arquivos são todos transferidos para o servidor. Então, no meu computador local, eu git remote add dreamhost ssh://[email protected]/~/my-project . Em seguida, adiciono alguns arquivos e confirmo e git push dreamhost master . E um monte de erros aparecem:

Erro http://geotakucovi.com/gitError.jpg

Como usuário novato do Git, devo ter perdido alguma coisa. Por favor ajude!

    
por ConcreteVitamin 04.10.2011 / 06:16

2 respostas

1

Quando você está usando um repositório Git como repositório central (como você parece ser), geralmente você não deve ter um diretório de trabalho nesse repo. A razão para isso está listada no erro que você mencionou: o envio para uma ramificação com check-out pode fazer com que a árvore de trabalho fique fora de sincronia.

Se as pessoas com as quais você está compartilhando puderem usar o Git, você poderá configurar um repositório vazio no servidor e, em seguida, enviar para ele.

# On the server
git init --bare ~/project.git

# On your computer
git remote add origin ssh://[email protected]/~/project.git
git push origin master

# On everyone else's computer
git remote add origin http://example.com/~david/project.git
git pull origin master
git checkout master

Se eles não puderem usar o Git, você precisará de um fluxo de trabalho um pouco mais complicado:

# On the server, once
git init ~/project
git config receive.denyCurrentBranch ignore

# On your computer
git remote add origin ssh://[email protected]/~/project
git push origin master

# On the server after each push
cd ~/project
git reset --hard

Após este passo, os arquivos devem estar disponíveis em /project

    
por 04.10.2011 / 07:30
0

Eu não sou um grande usuário git, mas tente isto:

  1. Clone seu repositório local e o repositório do seu servidor diretamente do Github.
  2. Faça suas modificações em seu repositório local.
  3. Comprometa-se com seu repositório local.
  4. Pressione para o Github.
  5. Puxar do Github para o seu servidor.
por 04.10.2011 / 07:03

Tags