it-swarm.com.de

Paketverwaltung in git für Windows?

Ich lese Wiki auf Github für Git und es sagt, dass msys2 Pacman bündelt: https://github.com/git-for-windows/git/wiki/Package-management

Aber wenn ich es anrufe:

$ pacman
bash: pacman: command not found

Hat jemand eine Idee was los ist? Auf welche Git-Version bezieht sich dieses Wiki? Gibt es eine Möglichkeit, zusätzliche Pakete zu msys2 in Git für Windows zu installieren?

27
carbolymer

Wie in Ausgabe 397 erwähnt :

Das ist beabsichtigt. Wir liefern Pacman nicht mit Git für Windows.
Wenn Sie sich für eine vollständig gepflegte Paket-Manager-Umgebung interessieren, müssen Sie das Git für Windows SDK versuchen.

Die Bash, die Sie im latest git für Windows (2.5.3) sehen, die eine neuere Bash als die alte msysgit ist, dient nur dazu, git-Befehle auszuführen.
Es ist keine vollwertige Linux-Umgebung, um Pakete von Drittanbietern zu installieren.

22
VonC

Git für Windows ( https://gitforwindows.org/ oder https://git-scm.com/downloads ) (hat Git Bash), enthält jedoch keine tree. tree ist für via pacman (Package Manager) verfügbar. Dies ist jedoch nur verfügbar, wenn Sie "Git für Windows SDK" installieren (blättern Sie bis zum Ende von https://gitforwindows.org/ . Hier finden Sie einen Link zum Herunterladen des Installationsprogramms von https://github.com/git-for-windows/build-extra/releases/latest ).

Diese SO: "Paketverwaltung in git für Windows?" war sehr hilfreich Paketverwaltung in git für Windows?

Wie auch in den obigen SO kommentiert, verlinken sie mit diesem git für Windows-Problem [Pacman fehlt bei der neuen 2.5.2-Installation # 397], dass pacman nicht in der Standardinstallation enthalten sein sollte.

Wie auch immer, ich habe "Git for Windows SDK" installiert, dann in der bash Prompt (SDK-64) die folgende -Anweisung ausgeführt, um den aktuellen Baum v1.7.0-1 (ab diesem Eintrag, 30. August 2018) zu installieren:

[SDK-64: Bash Terminal for Git for Windows SDK]
pacman -S tree
...
Proceed with installation? [Y/n] Y

Auf meinem System ist Git für Windows SDK installiert unter: C:\git-sdk-64. Daher habe ich es von meiner Git für Windows Bash-Shell (in der kein Tree installiert ist) über tree.exe in das Verzeichnis/usr/bin kopiert, z.

[MINGW64: Bash Terminal for Git for Windows]
cd /usr/bin
cp /c/git-sdk-64/usr/bin/tree.exe .

Jetzt kann ich tree v1.7.0 von beiden Git-Bash-Shells ausführen.

Um es für andere und vielleicht für mich selbst auf einem zukünftigen Computer noch einfacher zu machen, habe ich mir angesehen, wo pacman das tree-Paket abgerufen hat, indem ich in meinem Git für Windows SDK Bash-Terminal folgendes ausführte:

$ pacman -S --info tree
Repository      : msys
Name            : tree
Version         : 1.7.0-1
Description     : A directory listing program displaying a depth indented list of files
Architecture    : x86_64
...

Der Schlüssel ist hier, dass pacman es aus dem "msys" -Repository bezieht (FYI: obwohl msys sagt, dass es wirklich msys2 verwendet), also habe ich /etc/pacman.d/mirrorlist.msys betrachtet und der erste Spiegel zeigt auf http://repo.msys2.org/msys/$Arch/

Das nächste Mal, wenn Sie ein Paket suchen, das NICHT in Git für Windows enthalten ist, können Sie es von folgender Adresse herunterladen: http://repo.msys2.org/msys/x86_64/ (für 64-Bit) oder von http://repo.msys2.org/msys/i686/ (32-Bit)

z.B. Direkter Download-Link für Baum v1.7.0-1

Zu Ihrer Information: Git SCM's Window Download unter https://git-scm.com/download/ holt das neueste aus Git für Windows GitHub ( https://github.com/git-for-windows)/git aus dem https://github.com/git-for-windows/git/releases/ link) 

8
N. Ngo

Es scheint einen dokumentierten Weg zu geben, um dies zu tun, ohne das Git für Windows SDK installieren zu müssen (was sehr groß ist). Ich erhielt den Link zu dieser Info von PhilipOakley, als ich auf GitHub Ausgabe # 1912 dies alles fragte.

Hier ist der aktuelle Text des Git für Windows GitHub Wiki-Seite darüber:

Install in MSYS2 richtig

In diesem Handbuch wird davon ausgegangen, dass Sie die 64-Bit-Version von Git für Windows verwenden möchten.

Da Git für Windows auf MSYS2 basiert, ist es möglich, das Paket git in einer vorhandenen MSYS2-Installation zu installieren. Wenn Sie also bereits MSYS2 auf Ihrem Computer verwenden, können Sie Git für Windows verwenden, ohne das vollständige Installationsprogramm auszuführen oder die portable Version zu verwenden.

Beachten Sie jedoch, dass es einige Einschränkungen für diesen Weg gibt. Git für Windows hat einige Patches für msys2-runtime erstellt, die nicht an den Upstream gesendet wurden. (Dies war geplant, aber in Ausgabe # 284 wurde bestimmt, dass dies wahrscheinlich nicht der Fall sein würde.) Dies bedeutet, dass Sie Git for Windows Customized msys2-runtime installieren müssen, um eine voll funktionsfähige Git in MSYS2 zu haben.

Hier die Schritte, die zu unternehmen sind:

  1. Öffnen Sie ein MSYS2-Terminal.

  2. Bearbeiten Sie /etc/pacman.conf und fügen Sie kurz vor [mingw32] (Zeile # 71 auf meinem Computer) das Repository für git-for-windows-Pakete hinzu:

[git-for-windows] Server = https://wingit.blob.core.windows.net/x86-64

und optional auch das MINGW-only-Repository für die Gegenteil - Architektur (d. h. MINGW32 für 64-Bit-SDK):

[git-for-windows-mingw32] Server = https://wingit.blob.core.windows.net/i686

  1. Autorisieren Sie den Signaturschlüssel (dieser Schritt muss gelegentlich wiederholt werden, bis https://github.com/msys2/msys2/issues/62 behoben ist.

curl -L https://raw.githubusercontent.com/git-for-windows/build-extra/master/git-for-windows-keyring/git-for-windows.gpg | pacman-key --add - && pacman-key --lsign-key 1A9F3986

  1. Dann synchronisieren Sie das neue Repository

pacboy update

  1. Dies aktualisiert msys2-runtime und fordert Sie daher auf, das Fenster zu schließen (nicht, beenden Sie einfach den Pacman-Prozess). Keine Panik, schließen Sie einfach alle derzeit geöffneten MSYS2-Shells und MSYS2-Programme. Überprüfen Sie den Task-Manager erneut, und beenden Sie pacman.exe, es wird nach dem Schließen des Fensters immer noch ausgeführt, da es andauern kann. Sobald alle geschlossen sind, starten Sie ein neues Terminal.

  2. Dann synchronize again (Aktualisierung des Nicht-Kerns der Pakete):

pacboy update

  1. Und schließlich installieren Sie die Git/cURL-Pakete:

pacboy sync git:x git-doc-html:x git-doc-man:x git-extra: curl:x

  1. Überprüfen Sie abschließend, ob alles in Ordnung ist, indem Sie git --version in einer MINGW64-Shell ausführen, und es sollte etwas wie git version 2.14.1.windows.1 (oder neuer) ausgegeben werden.
1
Mike Beaton

Ich wollte nicht von meiner bereits funktionierenden Git für Windows-Installation abweichen und habe ein bisschen improvisiert:

  1. Installieren Sie Git für Windows SDK woanders. Dafür benötigen Sie mehr als 3 GB freien Speicherplatz.
  2. ${git-sdk}/usr/bin/pacman.exe in ${git}/usr/bin kopieren
  3. Kopiere ${git-sdk}/etc/pacman.conf und ${git-sdk}/etc/pacman.d in ${git}/etc
  4. ${git-sdk}/var in ${git}/ kopieren

Das ist alles. Sie können jetzt Ihren Git Bash öffnen und pacman -S python ausführen, um Pakete in Ihrem vorhandenen Git für Windows-Setup zu installieren.

Sie benötigen Schreibzugriff auf das Git für Windows-Verzeichnis. Ihre pacman meint jetzt auch, dass viele Pakete installiert sind (vom SDK), aber es hat mich nicht davon abgehalten, es zu verwenden.

0
Chulup