Verwendung von Windows-Netzwerkpfaden mit Git Bash

76

Pfade zu Netzwerkressourcen werden in Windows mit der \\servername\share\path\to\folderSyntax angegeben. Wie verwendet man einen solchen Ordner in Git Bash, der Pfade im Unix-Stil verwendet?

Florian von Stosch
quelle
Es ist wirklich nicht gut, Git über Samba zu verwenden, wenn man es vermeiden kann. Es wird langsam sein und leicht brechen.
Iveqy
8
Trotzdem ist es nützlich für Leute, die Git-Bash als Unix-Umgebungsersatz unter Windows verwenden.
Wilbert
4
Niemand erwähnte die Verwendung von Git über Samba. Git bash! = Git
robertmain

Antworten:

87

Eigentlich genau dort, cd //servername/share/path/to/folderwo //servername/mindestens ein freigegebener Ordner folgt.

Protometa
quelle
7
... und hier ist nichts Besonderes cd. Man kann direkt über ein Bash-Skript auf die Freigabe zugreifen, dh als find //10.10.10.10/backup -type f -name "*.source" | zip -@ -9 b.zip.
mgaert
Wenn Sie unter Win10 erhöhte Cmd-Eingabeaufforderungen sowie Git-Bash verwenden, sollten Sie die Höhenstufe des Git (Bash) mit der Ebene des Cmd-Fensters abgleichen, in dem die Freigabe erstellt wird. Andernfalls ist das zugeordnete Laufwerk (implizit beim CD-Ansatz von Protometa oder explizit wie bei Florian von Stosch) nicht verfügbar. Das Aussortieren kann einige Minuten dauern.
Simon Coleman
2
Es ist wahrscheinlich erwähnenswert, dass Sie alle Schrägstriche (relativ zu OP) umgekehrt haben, damit dies funktioniert.
Brent Bradburn
17

Sie müssen dem Netzwerkpfad, den Sie verwenden möchten, einen Laufwerksbuchstaben zuordnen. Führen Sie dazu den folgenden Befehl in der Windows- cmdShell aus:

pushd \\servername\share\path\to\folder

Die nächste Eingabeaufforderung enthält den zugewiesenen Laufwerksbuchstaben, z Z:\path\to\folder. Öffnen Sie nun Git Bash (es funktioniert nicht mit einer bereits laufenden Instanz) und wechseln Sie zum neu erstellten Laufwerksbuchstaben:

cd Z:/path/to/folder

oder gleichermaßen

cd /z/path/to/folder
Florian von Stosch
quelle
4
Nette Berührung mit pushd. Natürlich net use N: \\\\10.10.10.10\\backupscheint auch eine Ebene mit einem bestimmten Laufwerksnamen zu funktionieren .
mgaert
8

Tatsächlich

git clone //servername/path/to/repo.git

funktioniert gut für mich (mit git version 1.9.0.msysgit.0)

Ajasja
quelle
3

Wenn Sie es zum Klonen benötigen, finden Sie hier eine passendere Antwort :

git clone file:////<host>/<share>/<path>

Beachten Sie das Wort fileund 4 slashesdanach ist das der Trick.

ich--
quelle
Dies sollte die akzeptierte Antwort sein, wenn Sie nur ein Repository auf dem Netzwerklaufwerk wie git init --bare \\host\share\repository-name.git git clone file:////host/share/repository-name
Paulecoyote
2

Sie müssen den Pfad nicht manuell eingeben. Einfach mit der rechten Maustaste klicken! Klicken Sie in Ihrem Repository auf die Option Git Bash. Es öffnet die Git-Bash mit Ihrem Repository-Pfad.

Geben Sie hier die Bildbeschreibung ein

Außerdem schlage ich vor, die Mp Network Drive-Option von Windows zu verwenden, um den Netzwerkspeicherort als Laufwerk zuzuordnen und nur zu verwenden.

027
quelle
Was ist, wenn es noch kein Repository ist ?
KansaiRobot