Como atualizar para a versão mais recente do Git no Windows? Ainda mostrando a versão mais antiga

375

Acabei de atualizar para o Git 1.8.0.1 para Windows, da minha versão anterior 1.7.9.mysysgit.0. Eu baixei a nova versão do site Git e instalei através do instalador normal do Git EXE.

Dito isto, quando eu inicio minha janela de terminal, ele ainda mostra que estou executando a versão 1.7.9.mysysgit.0 do git. Quando digito "git --version" no meu prompt, a mesma coisa.

Encontrei este artigo em um problema semelhante ao Git no Mac OSX , o que me leva a acreditar que ele tem algo a ver com um PATH defeituoso, mas ainda sou muito novo nisso (5 meses de autodidata), então eu estou sem saber como traduzir isso para o Windows.

Esse problema surgiu quando iniciei um novo projeto Rails e tentei enviá-lo para o Git. Eu adicionei o controle remoto:

git remote add origin [email protected]:brianscottk/blog.git

então:

git push -u origin master

Recebi a seguinte mensagem de erro:

fatal: https://github.com refs não encontrado: você executou o git update-server-info no servidor?

A pesquisa desse erro no Google me levou a este artigo , que me levou a atualizar, e aqui estou eu.

BrianScottK
fonte

Respostas:

722

Desde o Git 2.16.1 (2), você pode usar

C:\> git update-git-for-windows

Nas versões entre 2.14.2 e 2.16.1, o comando era

C:\> git update

(Mais tarde, ele foi renomeado para evitar confusão com a atualização do repositório local, por exemplo, como svn updatefaz.)

Esse comando não existe no Git 2.13 e antes.

Se esse erro com "não é um comando git", você não possui o Git for Windows ou a sua versão é muito antiga.

Nesse caso, simplesmente obtenha o instalador mais recente em https://git-scm.com/download (verifique se você deseja 32 ou 64 bits) e execute-o para atualizar.

Se você já possui a versão mais recente, ela não faz nada; nesse caso, você pode executar manualmente o instalador para reinstalar.

C:\> git update-git-for-windows
Git for Windows 2.17.0.windows.1 (64bit)
Up to date
Glória holandesa
fonte
60
Não sei por que isso foi tão prejudicado - é a resposta correta de como atualizar o Git no Windows.
OrangeDog
3
> git update na versão 2.14 não funcionou para mim (no Windows). Eu usei o instalador baixado do site e tudo correu suave (agora em 2.17.1)
Gianni
2
Funciona como um encanto, obrigado. Definitivamente não deve ser votado.
Rnsna 31/05/19
3
Eu acho que está sendo votado abaixo porque a versão em que esses comandos funcionam é mais específica do que o originalmente especificado. git updatenão funciona até a versão 2.14.2, o que significa que para pessoas como @ define acima, esta resposta parece errada.
Rickibarnes
3
Acho que tenho que desinstalar o Git para Windows e reinstalar a versão mais recente, porque a versão que estou usando é a versão 2.14.1.windows.1 do git .
precisa saber é o seguinte
86

Primeiro, verifique sua versão do git usando este comando

git version

Siga o caso de acordo com a sua versão git

Três casos:

  1. Se sua versão do git for 2.14.1 ou anterior:

    Desinstale o git, baixe o git mais recente e instale-o novamente.

  2. E versões entre 2.14.2 e 2.16.1:

    Comando de uso git update

  3. Se a versão for igual ou superior a Git 2.16.1 (2):

    Comando de uso git update-git-for-windows

Arslan Ahmad
fonte
4
Eu estava ficando louco com o git updateerro na versão 2.14.1. Portanto, esta resposta é a resposta certa, pois aborda esse comando inexistente antes da versão 2.14.2.
Erick Petrucelli
34

Atualização (26SEP2016): não é mais necessário desinstalar a versão anterior do git para atualizá-la para a mais recente; o pacote instalador encontrado no site de download do git win cuida de tudo. Basta seguir as instruções. Para obter informações adicionais, siga as instruções de instalação e atualização do git .

David
fonte
9
Não é que o instalador "cuide de tudo", ele simplesmente sobrescreve a instalação anterior. Portanto, se houver uma configuração personalizada, ela será substituída!
Celdor3
4
Existe uma maneira de atualizar e manter minhas configurações existentes? Quando executo o instalador do Windows para fazer a atualização, ele faz todas as mesmas perguntas complicadas que fiz quando o instalei pela primeira vez (sobre terminações de linha, preferências do editor etc.). O que eu realmente quero é só pegar a nova versão e manter todas as minhas configurações existentes
Andy
@ Andy, não tenho certeza se ele abrangerá todas as configurações, mas eu usaria o comando git-config antes da atualização, armazene seus valores em um script, atualize com as configurações padrão e use o script para personalizar suas configurações. Referência: git-scm.com/docs/git-config
David
3
O instalador não substitui nenhuma configuração e todas as configurações que você pode escolher na instalação são os valores atuais.
OrangeDog
17

Usando o comando "where git", descubra como o prompt de comando seleciona a versão. Depois de ter o caminho, você pode prosseguir e desinstalar / excluir completamente a versão anterior. Então, se você instalar e garantir que o novo local instalado esteja no caminho, ele deverá funcionar corretamente.

O uso de ferramentas amigáveis ​​ao git, como o cmder , facilitará sua vida. Você não precisa mais usar a inicialização dupla ou o cygwin, já que o suporte ao git no Windows já é de primeira. (O Git for windows instala o msysgit, que inclui todas as ferramentas unix necessárias do MinGW. O MinGW já existe há algum tempo e é bastante estável. Se você quiser, pode instalar a versão completa do msysgit em vez do Git para Windows . O msysgit está disponível no Git for janela do Windows na parte inferior.)

Rajan Ponnappan
fonte
2
Acabei de perceber que respondi a uma pergunta antiga. Mas pode ser útil para outras pessoas que vêm a esta página ...
Rajan Ponnappan
2
o link para o cmder está quebrado :(
FirefoxMetzger 20/17/17
Parece que o link cmder está funcionando novamente
Rajan Ponnappan 16/01
13

Apenas corra:

$ git update-git-for-windows
moriarty007
fonte
11

Git Bash

Observe que, se você procura descobrir qual versão Git Bashestá executando ou deseja verificar se precisa atualizar Git Bash, isso faz parte Git for Windows.

Portanto, sua versão do Git Bash é:

git --version

git versão 2.23.0.windows.1

Observe que é tecnicamente diferente de Bash. Na minha mesma máquina quando executo:

echo $BASH_VERSION

4.4.23 (1) - liberação

Instalador do Git for Windows

Para atualizar para a versão mais recente do Git e Git Bash, você pode baixar e instalar a versão mais recente do git para Windows . Conforme as Perguntas frequentes , as configurações / personalizações devem ser preservadas se estiverem instaladas nas pastas de configuração apropriadas.

Nota: O instalador é realmente projetado de maneira inteligente para fazer a coisa certa (exceto para dizer que está fazendo a coisa certa automaticamente). Se você estiver fazendo uma atualização, todas as telas do instalador serão pré-marcadas com as configurações da sua instalação atual (que será em breve anterior).

Não está mostrando as configurações padrão genéricas. Você não precisa procurar nenhum deles ou tem medo de interromper sua configuração cuidadosamente aprimorada. Apenas deixe tudo como está, para manter suas escolhas anteriores.

De fato, eles tornaram as coisas ainda mais fáceis (se fosse claro que elas o fizeram).
Há uma caixa de seleção na parte inferior [] Show only new settings(não me lembro da letra exata). Como nada na primeira tela muda quando você marca a caixa, não é exatamente óbvio para que serve. Se você marcar a caixa, todas as suas configurações atuais serão mantidas, e a exibição das telas de configurações subsequentes será ignorada . Somente telas com configurações recém-introduzidas serão exibidas.

git update-git-for-windows

Como alternativa, como outros observaram, você também pode atualizar o Git Bash e o Git (por definição, ambos são sempre atualizados ao mesmo tempo) na linha de comando do Git Bash, através de:

git update-git-for-windows  

Se você digitar git update, o git lembrará que o comando foi atualizado para git update-git-for-windows:

Atenção! git updatefoi descontinuado;
Por favor, use em seu git update-git-for-windowslugar.
Git for Windows 2.26.0.windows.1 (64bit)
Atualizado

SherylHohman
fonte
6

Com base na última resposta do @Simon, primeiro desinstalei a nova versão do Git. Então eu re- instalado a nova versão do Git no mesmo diretório que a versão antiga , C:/RailsInstaller/Gitem vez do diretório padrão C:/Git.

Agora minha janela de terminal do rails mostra que estou executando a nova versão git 1.8.0.

BrianScottK
fonte
2

para verificar sua PATHvariável, faça o seguinte:

  1. Na área de trabalho, clique com o botão direito do mouse em Meu computador e clique em Propriedades.
  2. Clique no link Configurações avançadas do sistema na coluna esquerda.
  3. Na janela Propriedades do sistema, clique no botão Variáveis ​​de ambiente.

Uma vez lá, role para obter a Pathlinha, você obterá uma longa sequência de caminhos (por exemplo C:\windows\bin;C:\program files\git, etc)

Encontre a linha ou linhas onde gité referenciada. Em seguida, verifique se esse caminho aponta para a instalação do Git 1.8.x. Caso contrário, exclua-o e adicione o caminho real à versão mais recente do Git. No final, você deve ter apenas um caminho na string vinculado ao Git.

Espero que esta ajuda!

Simon Boudrias
fonte
Obrigado pela ajuda, @ Simon, mas ainda estou tendo problemas. Consegui localizar a Pathlinha nas minhas Variáveis ​​de ambiente. Você estava certo, pois estava direcionando para o que parece ser uma versão mais antiga do Git. (Aparentemente, eu tenho 2 versões. O meu original foi instalado via RailsInstaller localizado no diretório RailsInstaller e o novo que acabei de instalar em seu próprio diretório.) Minha Pathlinha foi lida C:\RailsInstaller\Git\cmd;C:\RailsInstaller\Ruby1.9.3\bine com base na sua resposta, mudei para C:\Git;C:\RailsInstaller\Ruby1.9.3\bin, mas minha terminal ainda está mostrando v 1.7.9 ...
BrianScottK
Você abriu um novo prompt de comando após a alteração para verificar a versão? Além disso, C:\Gitvocê deve ter um git Bash, abri-lo e verificar se você possui a versão correta neste bash, isso confirmará que esta pasta é onde o 1.8 está realmente instalado. Se nada der certo, tente desinstalar a versão antiga e reinstalar a nova.
Simon Boudrias
Obrigado, @Simon! Isso não funcionou exatamente, mas me levou à resposta certa, que descrevi abaixo. Agradecemos a ajuda!
BrianScottK
11
Uma maneira mais rápida para obter uma lista de caminhos é abrir Powershell e digite o seguinte:$env:path -split ';'
Dave Sexton
Você pode usar where gitpara ver onde o Git está instalado. Verifique se o caminho está no seu PATH. Eu gosto do método @DaveSexton acima para visualizar o PATH var. Existe uma maneira de obter uma lista semelhante em uma janela do Git Bash, em vez do PowerShell?
SherylHohman 26/07/19
2

se você apenas digitar

$ git update

no bash git informará que o comando 'update' não está mais funcionando e exibirá o comando correto que é 'update-git-for-windows'

mas ainda assim a atualização continuará, basta pressionar "y"

se você estiver com problemas, execute o bashh como administrador ou adicione o caminho 'git.exe' aos "aplicativos permitidos através do acesso controlado à pasta".

ailia
fonte
2

Se você observar a atualização mais recente no site do Git na seção "git via git" , verá uma opção para atualizar sua versão mais antiga.

Aqui está o comando que o git possui em seu site:

git clone https://github.com/git/git

Funcionou para a minha versão do git, que era a 2.13.0.windows.1.

Nate
fonte
Ok, alarme falso. A atualização é exibida como "concluída", no entanto, a versão é a mesma, então eu desinstalei e baixei a versão mais recente do Git.
Nate
1

Não acho que seu problema esteja relacionado ao PATH global do Windows, como remoteé específico para o repo.

Eu recomendo que você use o Git no Cygwin. O Git pode funcionar na linha de comando do Windows, mas pode haver alguns problemas estranhos difíceis de descobrir. Sob Cygwin, é mais natureza e tem menos erros.

Tudo que você precisa é digitar o bashWindow CMD e começar a usar as ferramentas e comandos do Unix. Você pode usar um atalho para carregar bash, é tão fácil quanto usar o CMD normal do Windows.

O mesmo vale para Rails e Ruby. Eu usei o RailsInstaller antes, mas o uso do Cygwin para instalar o Rails é mais estável.

Por fim, sugiro instalar o Ubuntu dual boot se você tiver tempo (cerca de um mês para se familiarizar). O Windows não é muito amigável para todas as ferramentas Unix. Você encontrará toda a dor parada.

Billy Chan
fonte
Já ouvi outras pessoas sugerindo isso, mas agora sinto que sou muito novo para notar uma diferença entre Cygwin e Windows CMD.
BrianScottK
11
Cygwin imitará o ambiente unix. Todos os comandos parecerão nativos, e os ambientes variáveis ​​para o unix estarão em um só lugar - na pasta cygwin. Se você não está preparado para o Linux, use pelo menos o cgywin.
Billy Chan
2
Cygwin é péssimo, está muito inchado e há muitos comportamentos surpreendentes e quebrados. Se você deseja usar o Git no Windows, deve usar definitivamente o Git for Windows - ele ainda fornece um bash nativo do Windows e algumas ferramentas * NIX. Se você realmente deseja um ambiente Linux completo no Windows, acesse a Microsoft Store e instale um deles (Ubuntu, SUSE, Debian, Kali).
OrangeDog