Comment passer à la dernière version de Git sur Windows? Toujours montrant l'ancienne version


377

Je viens de passer à Git 1.8.0.1 pour Windows, à partir de ma version précédente 1.7.9.mysysgit.0. J'ai téléchargé la nouvelle version depuis le site Git et l' ai installée via le programme d'installation normal de Git EXE.

Cela dit, lorsque je lance ma fenêtre de terminal, cela montre toujours que j'utilise la version 1.7.9.mysysgit.0 de git. Quand je tape "git --version" à partir de mon invite, même chose.

J'ai trouvé cet article sur un problème similaire avec Git sur Mac OSX , ce qui m'amène à croire qu'il a quelque chose à voir avec un CHEMIN défectueux, mais je suis encore assez nouveau à tout cela (5 mois autodidacte), donc je suis à une perte dans la façon de traduire ceci à Windows.

Ce problème est survenu lorsque j'ai commencé un nouveau projet Rails et essayé de le pousser vers Git. J'ai ajouté la télécommande:

git remote add origin git@github.com:brianscottk/blog.git

puis:

git push -u origin master

J'ai reçu le message d'erreur suivant:

fatal: https://github.com refs not found: avez-vous exécuté git update-server-info sur le serveur?

La recherche sur cette erreur m'a conduit à cet article , ce qui m'a incité à mettre à niveau, et me voici.

Réponses:


724

Depuis Git 2.16.1 (2), vous pouvez utiliser

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

Dans les versions entre 2.14.2 et 2.16.1, la commande était

C:\> git update

(Il a ensuite été renommé pour éviter toute confusion avec la mise à jour du référentiel local, par exemple comme svn updateil le fait.)

Cette commande n'existe pas dans Git 2.13 et avant.

Si cette erreur avec "n'est pas une commande git", soit vous n'avez pas réellement Git pour Windows, soit votre version est très ancienne.

Dans ce cas, obtenez simplement le dernier programme d'installation sur https://git-scm.com/download (vérifiez si vous voulez 32 ou 64 bits) et exécutez-le pour mettre à niveau.

Si vous avez déjà la dernière version, elle ne fait rien, auquel cas vous pouvez exécuter manuellement le programme d'installation pour réinstaller.

C:\> git update-git-for-windows
Git for Windows 2.17.0.windows.1 (64bit)
Up to date

60
Je ne sais pas pourquoi cela est si voté - c'est la bonne réponse pour savoir comment mettre à jour Git sur Windows.
OrangeDog

3
> La mise à jour de git dans la version 2.14 n'a pas fonctionné pour moi (sous Windows). J'ai utilisé l'installateur téléchargé sur le site et tout s'est bien passé (maintenant sur 2.17.1)
gianni

2
Fonctionne comme un charme, merci. Ne devrait certainement pas être rétrogradé.
rsenna

3
Je pense que cela est sous-estimé parce que la version où ces commandes fonctionnent est plus spécifique que celle spécifiée à l'origine. git updatene fonctionne pas avant 2.14.2, ce qui signifie que pour les personnes comme @defines ci-dessus, cette réponse semble fausse.
rickibarnes

3
Je pense que je dois désinstaller mon Git pour Windows et réinstaller la dernière version, car la version que j'utilise est la version 2.14.1.windows.1 de git .
KaiserKatze

89

Tout d'abord, vérifiez votre version git en utilisant cette commande

git version

Suivez ensuite le cas en fonction de votre version git

Trois cas:

  1. Si votre version git est 2.14.1 ou antérieure:

    Désinstallez le git, téléchargez le dernier git et réinstallez-le.

  2. Et les versions entre 2.14.2 et 2.16.1:

    Utiliser la commande git update

  3. Si la version est égale ou supérieure à Git 2.16.1 (2):

    Utiliser la commande git update-git-for-windows


4
Je git updatedevenais fou avec une erreur sur la version 2.14.1. Cette réponse est donc la bonne réponse car elle répond à cette commande inexistente avant 2.14.2.
Erick Petrucelli

34

Mise à jour (26SEP2016): il n'est plus nécessaire de désinstaller votre version précédente de git pour la mettre à niveau vers la dernière; le package d'installation trouvé sur le site de téléchargement de git win s'occupe de tout. Suivez simplement les invites. Pour plus d'informations, suivez les instructions d' installation et de mise à niveau de git .


9
Ce n'est pas que l'installateur "s'occupe de tout", il écrase simplement l'installation précédente. Donc, s'il existe des paramètres personnalisés, ils seront remplacés!
Celdor

4
Existe-t-il un moyen de mettre à niveau et de conserver mes paramètres existants? lorsque j'exécute le programme d'installation de Windows pour effectuer la mise à niveau, il me pose toutes les mêmes questions compliquées qu'il a posées lors de ma première installation (sur les fins de ligne, les préférences de l'éditeur, etc.). Ce que je veux vraiment, c'est simplement obtenir la nouvelle version et conserver tous mes paramètres existants
Andy

@Andy, je ne sais pas si elle couvrira tous les paramètres, mais j'utiliserais la commande git-config avant la mise à niveau, stocker vos valeurs dans un script, mettre à niveau avec les paramètres par défaut et ensuite utiliser le script pour personnaliser vos paramètres. Référence: git-scm.com/docs/git-config
David

3
Le programme d'installation n'écrase aucun paramètre, et tous les paramètres que vous pouvez choisir dans l'installation par défaut à leurs valeurs actuelles.
OrangeDog

17

En utilisant la commande "where git", découvrez comment l'invite de commande récupère la version. Une fois que vous avez le chemin, vous pouvez continuer et désinstaller / supprimer complètement la version précédente. Ensuite, si vous installez et assurez-vous que le nouvel emplacement installé se trouve dans le chemin, cela devrait fonctionner correctement.

L'utilisation d'outils conviviaux comme cmder vous facilitera la vie. Vous n'avez plus vraiment besoin d'utiliser dual boot ou cygwin car la prise en charge de git dans Windows est déjà de premier ordre. (Git pour Windows installe msysgit qui inclut tous les outils Unix nécessaires de MinGW. MinGW est là depuis un certain temps et est assez stable. Si vous le souhaitez, vous pouvez installer la version complète de msysgit plutôt que Git pour Windows . Msysgit est disponible sur Git pour page Windows en bas.)


2
Je viens de réaliser que j'ai répondu à une vieille question. Mais cela pourrait être utile pour d'autres qui viennent sur cette page ...
Rajan Ponnappan

2
le lien vers cmder est rompu :(
FirefoxMetzger

On dirait que le lien cmder fonctionne à nouveau
Rajan Ponnappan


12

Git Bash

Notez que si vous cherchez plutôt à savoir quelle version de Git Bashvous utilisez ou si vous voulez voir si vous devez mettre à jour Git Bash, cela fait partie de Git for Windows.

Votre version de Git Bash est donc:

git --version

git version 2.23.0.windows.1

Notez qu'il est techniquement différent de Bash. Sur ma même machine quand je cours:

echo $BASH_VERSION

4.4.23 (1) - libération

Programme d'installation de Git pour Windows

Pour mettre à jour vers la dernière version de Git et Git Bash, vous pouvez télécharger et installer la dernière version de git pour Windows . Conformément à la FAQ , les paramètres / personnalisations doivent être conservés s'ils ont été installés dans les dossiers de configuration appropriés.

Remarque: Leur programme d'installation est en fait intelligemment conçu pour faire la bonne chose (sauf pour vous dire qu'il fait automatiquement la bonne chose). Si vous effectuez une mise à jour, chaque écran du programme d'installation est pré-marqué avec les paramètres de votre installation actuelle (qui sera bientôt précédente).

Il ne vous montre pas les paramètres génériques par défaut. Vous n'avez pas besoin de les rechercher, ni de craindre d'avoir brisé votre configuration soigneusement affinée. Laissez tout simplement tel quel, pour conserver vos choix précédents.

En fait, ils l'ont rendu encore plus facile (si seulement c'était clair qu'ils l'avaient fait).
Il y a une case à cocher en bas [] Show only new settings(je ne me souviens pas du libellé exact). Étant donné que rien sur le premier écran ne change lorsque vous cochez la case, ce n'est pas exactement à quoi il sert. Si vous cochez la case, tous vos paramètres actuels seront conservés et vous ne verrez plus les écrans de paramètres suivants . Seuls les écrans avec des paramètres nouvellement introduits seront affichés.

git update-git-for-windows

Alternativement, comme d'autres l'ont noté, vous pouvez également mettre à jour Git Bash et Git (par définition, les deux sont toujours mis à jour en même temps) à partir de la ligne de commande Git Bash, via:

git update-git-for-windows  

Si vous tapez git update, git vous rappelle gentiment que la commande a été mise à jour pour git update-git-for-windows:

Attention! git updatea été déprécié;
Veuillez utiliser à la git update-git-for-windowsplace.
Git pour Windows 2.26.0.windows.1 (64bit)
À jour


6

Sur la base de la dernière réponse de @Simon, j'ai d'abord désinstallé la nouvelle version de Git. Je puis re installé la nouvelle version de Git dans le même répertoire que l'ancienne version , C:/RailsInstaller/Gitau lieu du répertoire par défaut C:/Git.

Maintenant, ma fenêtre de terminal rails montre que j'utilise la nouvelle version git 1.8.0.


2

pour vérifier votre PATHvariable, procédez comme suit:

  1. Depuis le bureau, cliquez avec le bouton droit sur Poste de travail et cliquez sur Propriétés.
  2. Cliquez sur le lien Paramètres système avancés dans la colonne de gauche.
  3. Dans la fenêtre Propriétés système, cliquez sur le bouton Variables d'environnement.

Une fois là, faites défiler pour obtenir la Pathligne, vous obtiendrez une longue chaîne de chemins (par exemple C:\windows\bin;C:\program files\git, etc.)

Recherchez la ou les lignes où gitest référencé. Ensuite, assurez-vous que ce chemin pointe vers votre installation de Git 1.8.x. Sinon, supprimez-le et ajoutez le vrai chemin vers la dernière version de Git. À la fin, vous ne devriez avoir qu'un seul chemin dans la chaîne reliant à Git.

J'espère que cette aide!


Merci pour l'aide, @Simon, mais j'ai toujours des problèmes. J'ai pu localiser la Pathligne dans mes variables d'environnement. Vous aviez raison en ce sens qu'il s'agissait de ce qui semble être une ancienne version de Git. (Apparemment, j'ai 2 versions. Mon original tel qu'installé via RailsInstaller situé dans le répertoire RailsInstaller, et le nouveau que je viens d'installer dans son propre répertoire.) Ma Pathligne lue C:\RailsInstaller\Git\cmd;C:\RailsInstaller\Ruby1.9.3\binet en fonction de votre réponse, je l'ai changé en C:\Git;C:\RailsInstaller\Ruby1.9.3\bin, mais mon terminal affiche toujours la v 1.7.9 ...
BrianScottK

Avez-vous ouvert une nouvelle invite de commande après la modification pour vérifier la version? De plus, dans C:\Git, vous devriez avoir un git Bash, l'ouvrir et vérifier que vous avez la bonne version dans ce bash, cela confirmera que ce dossier est l'endroit où 1.8 est vraiment installé. Si rien ne le fait, essayez de désinstaller l'ancienne version et réinstallez la nouvelle.
Simon Boudrias

Merci, @Simon! Cela n'a pas fonctionné exactement, mais m'a conduit à la bonne réponse, que j'ai décrite ci-dessous. Appréciez l'aide!
BrianScottK

1
Un moyen plus rapide d'obtenir une liste de chemins consiste à ouvrir Powershell et à saisir les informations suivantes:$env:path -split ';'
Dave Sexton

Vous pouvez utiliser where gitpour voir où Git est installé. Assurez-vous que ce chemin est dans votre PATH. J'aime la méthode @DaveSexton ci-dessus pour afficher la variable PATH. Existe-t-il un moyen d'obtenir une liste similaire à partir d'une fenêtre Git Bash, plutôt que Powershell?
SherylHohman

2

si vous tapez simplement

$ git update

on bash git vous informera que la commande 'update' ne fonctionne plus et affichera la commande correcte qui est 'update-git-for-windows'

mais la mise à jour continuera, il vous suffit d'appuyer sur "y"

si vous rencontrez des problèmes, exécutez le bashh en tant qu'administrateur ou ajoutez le chemin "git.exe" aux "applications autorisées via un accès contrôlé aux dossiers".


2

Si vous regardez la dernière mise à jour sur le site Web de Git dans la section "git via git" , vous verrez une option pour mettre à jour votre ancienne version.

Voici la commande que git a sur leur site:

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

Cela a fonctionné pour ma version de git qui était un 2.13.0.windows.1.


D'accord, fausse alarme. La mise à jour s'affiche comme "terminée", cependant, la version est identique, j'ai donc désinstallé et téléchargé la dernière version de Git.
Nate

1

Je ne pense pas que votre problème soit lié au PATH global de Windows, comme remotec'est spécifique au dépôt.

Je vous recommande d'utiliser Git sous Cygwin. Git pourrait fonctionner sous la ligne de commande Windows, mais il peut y avoir des problèmes étranges difficiles à comprendre. Sous Cygwin, c'est plus de nature et moins d'erreurs.

Il vous suffit de taper bashdans Window CMD puis de commencer à utiliser les outils et commandes Unix. Vous pouvez utiliser un raccourci pour charger bash, c'est aussi simple que d'utiliser le CMD Windows normal.

Il en va de même pour Rails et Ruby. J'ai utilisé RailsInstaller auparavant, mais j'ai trouvé que l'utilisation de Cygwin pour installer Rails est plus stable.

Enfin, je vous suggère d'installer Ubuntu dual boot si vous en avez le temps (environ un mois pour vous familiariser). Windows n'est finalement pas très convivial pour tous les outils Unix. Vous constaterez que toute douleur est arrêtée.


J'ai entendu d'autres personnes le suggérer, mais en ce moment, je pense que je suis juste trop nouveau pour remarquer une différence entre Cygwin et Windows CMD.
BrianScottK

1
Cygwin imitera l'environnement Unix. Toutes les commandes ressembleront à natives, et les environnements vairables pour unix seront au même endroit - sous le dossier cygwin. Si vous n'êtes pas prêt pour Linux, utilisez au moins cgywin.
Billy Chan

2
Cygwin craint, il est très gonflé et il y a beaucoup de comportements surprenants et cassés. Si vous souhaitez utiliser Git sur Windows, vous devez certainement utiliser Git pour Windows - il fournit même un bash Windows natif et certains outils * NIX. Si vous voulez vraiment un environnement Linux complet sur Windows, allez sur le Microsoft Store et installez-en un (Ubuntu, SUSE, Debian, Kali).
OrangeDog
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.