web-dev-qa-db-fra.com

Combiner mingw et git

J'ai l'installation de MinGW dans D:\mingw. J'ai Git installation dans C:\Program Files\git. Je veux développer/compiler en utilisant MinGW et utiliser git pour le versioning.

Je suppose que je dois utiliser des chemins corrects mais certains chemins sont codés en dur. Comme les appels de script de montage msys /bin/msysmnt.exe

J'ai donc 2 options: 1. utiliser le shell de git (pour pouvoir me montrer la branche à l'invite) 2. utiliser le shell de mingw (msys) - pour avoir des chemins corrects

Quel que soit mon choix, je dois faire fonctionner les autres fonctionnalités en dessous.

39
NickSoft

Petite mise à jour: Depuis les versions de Git 2.x, Git pour Windows est basé sur MSYS2 = et disponible sous forme binaire 32 et 64 bits. C'est toujours une fourche, et non interchangeable avec le vrai MSYS2.


Une chose que vous devez comprendre: msysgit (le git que vous utilisez) est un fork de msys avec une fonctionnalité git ajoutée. De nombreux outils Unix sont inclus dans le shell msys (pour une liste complète, voir le dossier msysgit/bin).

Il pourrait être possible d'ajouter des outils msys supplémentaires au dossier bin msysgit, mais je ne risquerais pas ma tête là-dessus.

À la lumière de cela, je pense qu'il serait optimal d'ajouter simplement votre chaîne d'outils au chemin msysgit (en utilisant le fichier de profil bash ou autre dans l'arborescence msysgit) et de simplement l'utiliser. Si un utilitaire particulier est manquant, ajoutez-le à partir de l'arborescence MinGW-msys et espérons qu'il fonctionne correctement.

Alternativement, utilisez simplement msys-git de cmd.exe. Depuis les versions récentes, cela fonctionne très bien (y compris git show, modification des messages de commit etc ...). Pour ce faire, ajoutez le répertoire/cmd à PATH et vous pouvez utiliser toutes les commandes git de votre choix. C'est ce que je fais, car msys est un frein, mais un mal nécessaire pour que git fonctionne sous Windows.

MISE À JOUR: instructions détaillées pour ajouter un répertoire à PATH sous n'importe quel type de MSYS:

export PATH=/d/MinGW/bin:$PATH

ou trouver de manière piratée/etc/profile et modifier cette section

if [ $MSYSTEM == MINGW32 ]; then
  export PATH=".:/usr/local/bin:/mingw/bin:/bin:$PATH"
else
  export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi

à:

if [ $MSYSTEM == MINGW32 ]; then
  export PATH=".:/usr/local/bin:/d/MinGW/bin:/bin:$PATH"
else
  export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi

Il n'y a pas de moyen plus propre car les personnes msys-git ont désactivé la fonctionnalité fstab présente dans Vanilla msys.

Mise à jour de Nick (ce que j'ai fait pour que ça marche):

J'ai créé un fichier dans C:\Program Files\Git\etc appelé bash_profile. Voici le contenu du fichier:

export PATH=$PATH:/d/mingw/bin:/d/mingw/msys/1.0/bin

make et gcc ont fonctionné.

Le bash_profile ne vient pas avec msysgit donc vous ne le remplacerez pas si vous mettez à jour.

28
rubenvb

J'ai mis Git sur le shell MinGW en ouvrant le profil c:\MinGW\msys\1.0\etc\(pas dans le Bloc-notes, il n'y a pas de retour chariot) et en ajoutant:

export PATH=$PATH:/c/Program\ Files\ \(x86\)/Git/bin

Sur un système x86, ce serait:

export PATH=$PATH:/c/Program\ Files/Git/bin
16
Jon Davis

mise à jour:

maintenant msys est livré avec le paquet binaire git.

http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/

ancienne réponse:

Si vous utilisez la dernière mingw & portableGit , déposez simplement git.exe (extrayez le fichier de portableGitXXX.7z) dans C:\MinGW\msys\1.0\bin \

6
plan9assembler

Utilisez msys2. Son msys avec un gestionnaire de paquets décent (pacman) et un système de construction (makepkg), portés depuis Arch Linux. J'ai un Shell avec tous mes devtools et git et tel al

6
hanetzer