it-swarm.com.de

Wie kann ich ein Remote-Git-Repo unter Windows einrichten und klonen?

Weiß jemand, wie man ein Projekt oder einen Code aus einem Git-Remote-Repository auf einem Windows-Server auscheckt, klont oder abruft?

Die Repository-IP lautet: xxx.xx.xxx.xx, das Quelldateiverzeichnis lautet c:\repos\project.git

Ich bin an die Befehlszeilenschnittstelle eines SUSE Linux-Terminals gewöhnt. Ich habe die gleiche Methode ausprobiert, aber es antwortet immer darauf

fatal: ''/repo/project.git'' does not appear to be a git repository
fatal: Could not read from remote repository..
Please make sure you have the correct access rights

Kann mir jemand sagen, wie man einrichtet und klont?

19
user1213492

Sie müssen eine Art Freigabe von der Windows-Maschine einrichten, auf die Sie mit git zugreifen können. Git unterstützt 3 Zugriffsmethoden: ssh, remote filesystem oder http. Die letzte ist wahrscheinlich am kompliziertesten, deshalb werde ich sie nicht detailliert beschreiben. Die ersten beiden sind:

  1. Richten Sie den SSH-Server unter Windows ein.

    Sie können dieses Handbuch ausprobieren: http://www.timdavis.com.au/git/setting-up-a-msysgit-server-with-copssh-on-windows/ . Siehe auch diese Frage für weitere Optionen.

    Dann klonen Sie mit git clone [email protected]:/c/git/path/to/repo (Sie werden nach dem Passwort gefragt).

    Der Vorteil dieser Methode ist, dass sie sicher ist (die Verbindung ist verschlüsselt und der SSH-Server ist vertrauenswürdig), sodass Sie sie über das Internet verwenden können. Da der git-Server während des Zugriffs auf dem Windows-Computer ausgeführt wird, können Sie Hooks für erweiterte Sicherheitsrichtlinien einrichten und andere Prozesse steuern.

  2. Teilen Sie das Repository mithilfe der Windows-Freigabe.

    Auf dem Linux-Host müssen Sie die Freigabe mit smbmount mounten. Dies erfordert möglicherweise einen Benutzernamen und ein Kennwort, je nachdem, wie Sie die Berechtigungen festlegen.

    Dann klonen Sie nach git clone /share/mountpoint/path/to/repo.

    Dies ist wahrscheinlich einfacher einzurichten, ist jedoch nicht sehr sicher und sollte daher nicht außerhalb des lokalen Netzwerks verwendet werden. Auch in diesem Fall werden Hooks auf dem Windows-Computer nicht ausgeführt (git versucht zwar, sie auf dem Linux-Computer auszuführen, sie werden jedoch entweder dort nicht ausgeführt oder können trotzdem umgangen werden), so dass Sie Advanced nicht anwenden können Sicherheit.

Eine bestimmte Datei ist nicht relevant. Sie müssen den Pfad zum Verzeichnis angeben, das das Unterverzeichnis .git enthält, oder zu dem Verzeichnis, das ein leeres Repository ist (oben path/to/repo). 

11
Jan Hudec

Zunächst einmal ist das Git-Repository nur eine Reihe von Dateien, auf die Sie zugreifen müssen. Sie haben über das Klonen und Abrufen von Repositorys geschrieben, und das ist ein einfacher Teil - Sie müssen nur auf die Dateien zugreifen (und Leserechte haben).

Dies kann durch direkten Zugriff auf das Dateisystem, das HTTP-Protokoll oder die SSH-Verbindung erfolgen. Tatsächlich gibt es sogar eine Möglichkeit, dies per FTP-Server zu erledigen.

Was du tun kannst:

1) Stellen Sie den SSH-Server ein und greifen Sie dann über den SSH-Server auf die Git-Dateien zu. Der Pfad, den Sie verwenden sollten, hängt von dem SSH-Server ab, den Sie unter Windows verwenden: source

2) Stellen Sie den Webserver so ein, dass er auf die Datei zugreifen kann: git clone http://Host/path/to/repo

3) Mounten Sie das Dateisystem von Windows auf Ihrem Linux-Rechner und klonen Sie das Repo: git clone /mnt/filesystem/path/to/repo

Trotz der von Ihnen gewählten Methode empfehle ich Ihnen, das entsprechende Kapitel aus Pro Git Book zu lesen.

0