Pergunta

Estou fazendo alterações em algum arquivo no meu repositório Git local e, em seguida, quero enviar as alterações para o repositório Git remoto do qual o local foi clonado via SSH.

Depois de executar "Git Commit -a" no meu lado local, para enviar as alterações para o controle remoto, eu corro

$ git push
Everything up-to-date

No entanto, verifiquei os arquivos remotos e eles não foram alterados! Qualquer ideia?

Obrigado e cumprimentos!

Foi útil?

Solução

Você provavelmente empurrou para um repositório que não seja da barra, ou seja, um repositório que possui uma cópia de trabalho anexada a ele. Você não deveria ter ignorado o aviso git push dá a você se perceber que esse é o caso.

Enfim, faça login na máquina remota, mude para o repositório e faça

git checkout <whatever branch you’re on>

Ai está. Na próxima vez, apenas entra em repositórios nus. :)

Outras dicas

Você já tentou o seguinte?

 $ git push origin master:master

Descobri que o problema era que não havia adicionado os arquivos à atualização e uma mensagem. Corrigi isso usando os seguintes comandos:

git add .

e depois

git commit -m "updates done by..."

e depois

git push origin <repo_name>

Espero que isso ajude alguém;)

Eu tive o mesmo problema e foi porque Eu tinha checado a um ponto da história (Nesse caso, uma etiqueta), em vez da extremidade (cabeça) de qualquer ramo ou mestre. Eu faria a mudança e o comprometimento que teria sucesso e veria as mudanças na minha história local. Quando corri Push Git, o Git afirmou que tudo estava bem, mas a mudança não havia sido enviada ao servidor (que pode ser visto verificando os logs ou recolocando novamente o repositório e verificando seus logs). O melhor sintoma desse erro é ver a mensagem "Cabeça detida de ____"

A solução

O que realmente precisa fazer (se você fez o que eu fiz) é criar uma nova linha de desenvolvimento por criando um ramo e mudar para esse ramo antes da fazendo as alterações.

git branch [a new branch name]
git checkout [a new branch name]  

Depois de comprometer as alterações, se você deseja que as alterações sejam empurradas para o servidor, você precisa empurrar a própria ramificação para o servidor.

git push -u origin [local branch name]

Agora, se você clonar o repositório, verá suas alterações nos logs. No entanto, da próxima vez que você clonar o repositório, para poder ir até esse ponto que você acabou de mudar, você precisará fazer o check -out dessa filial, pois você não fará com que esteja na linha principal que está "mais" na linha de desenvolvimento de onde você se ramificou.

git checkout [branch name]  
git commit --amend

Vai mudar o commit ID E faça o repositório remoto "pensar" novas mudanças foram feitas.

Eu sugiro que você veja usar Gitose por hospedando esses repositórios nus. É realmente fácil de usar após a configuração inicial.

Digite "Git Log" no seu repositório remoto para ver se ele contém o mais recente confirmação. Caso contrário, você deve verificar a configuração do seu repositório local para ver as configurações remotas.

Para ver as mudanças no tipo diferente do seu repositório remoto:

R. Se o seu repositório remoto estiver vazio, você poderá encontrar os arquivos nas filiais do repositório remoto/ configuração Descrição Hooks/ info/ objetos/ refs/

Depois que a nova confirmação é pressionada, os arquivos em objetos/ diretório mudariam.

B. Se o seu repositório remoto não for a barra, digite "Git Checkout Master" e "Git Status" em seu repositório remoto para ver o status do arquivo. Veja se algum arquivo foi modificado ou excluído.

Nenhuma dessas soluções funcionou para mim, e as confirmações apareceriam no meu site ao vivo somente depois de executar GIT_WORK_TREE=/path/to/website git checkout -f. Se esse é o seu caso, você deve adicionar um "gancho" à sua configuração Git.

  1. Vá para sua pasta The Hooks dentro da pasta Git:

    cd ~/path/.git

    cd hooks

    nano post-receive

  2. Escreva esta linha no arquivo pós-recebimento:

    GIT_WORK_TREE=/path/to/your/website/or/project/ git checkout -f

  3. Por fim, você deve modificar as permissões do arquivo pós-recebimento:

    chmod a+x post-receive

Isso executará esse comando toda vez que você pressionar, atualizando suas confirmações em seu projeto remoto.

Acabei de experimentar uma ocorrência igualmente frustrante de não ver minha mudança replicada no Github. Como um novo usuário do Git, apenas me acostumando ao uso do sistema, criei uma pasta no meu computador, adicionei, cometi, empurrei - sem alterações. Eu considerei a possibilidade de não poder pressionar um diretório vazio, então criei um arquivo vazio no diretório e depois repeti as etapas acima. Tudo melhor, a mudança foi instantaneamente refletida no meu repositório do Github.

Bem, é isso que funcionou para mim

git stash

git pull

git add .

git commit -m "commit message"

git push

Uma outra questão pode ser que, embora você possa ter usado

git add Seus-Dirs

Você deve se lembrar de cometer os arquivos nos diretórios

Git Commit -M'Add Your Message ' Seu-Dir/*

Em seguida, adicione um push git para empurrá -lo para o seu controle remoto

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top