Abrufen einer bestimmten Übergabe aus einem entfernten Git-Repository
Gibt es eine Möglichkeit, nur eine bestimmte Übergabe aus einem entfernten Git Repository abzurufen, ohne es auf meinem PC zu klonen? Die Struktur der Remote-Repository ist absolut die gleiche wie die von mir und daher gibt es keine Konflikte, aber ich habe keine Ahnung, wie dies zu tun, und ich don & #39; t wollen, dass riesige Repository klonen.
Ich bin neu in Git, gibt es eine Möglichkeit?
178
3
Sie klonen nur einmal, d.h. wenn Sie bereits einen Klon des entfernten Repositorys haben, wird durch das Ziehen von diesem nicht alles erneut heruntergeladen. Geben Sie einfach an, welchen Zweig Sie ziehen wollen, oder holen Sie die Änderungen und checken Sie den gewünschten Commit aus.
Das Holen aus einem neuen Repository ist sehr günstig in der Bandbreite, da es nur die Änderungen herunterlädt, die Sie nicht haben. Denken Sie daran, dass Git das Richtige macht, mit minimaler Belastung.
Git speichert alles im
.git
Ordner. Ein Commit kann nicht isoliert abgerufen und gespeichert werden, er braucht alle seine Vorgänger. Sie sind zusammenhängend.Um die Download-Größe zu reduzieren, können Sie Git jedoch bitten, nur Objekte zu holen, die mit einem bestimmten Zweig oder einer bestimmten Übertragung zusammenhängen:
Dies wird nur Commits herunterladen, die im entfernten Zweig
branch
(und nur die, die Sie vermissen) enthalten sind, und sie inorigin/branch
speichern. Sie können dann zusammenführen oder auschecken.Sie können auch nur einen SHA1-Commit angeben:
Dies lädt nur den SHA-1-Commit 96de5297df870 (und seine Vorgänger, die Sie vermissen) herunter und speichert ihn als (nicht existierenden) Remote-Zweig
origin/foo-commit
.Ich habe einen Pull auf mein Git Repo gemacht:
Damit konnte Git den gesamten Code für den Zweig einziehen, und dann habe ich den Commit zurückgesetzt, der mich interessierte.
git reset --hard
Hoffentlich hilft das.
Sie können einfach einen einzelnen Commit eines entfernten Repos holen mit
wo,
kann ein entfernter Repo-Name sein (z.B.
origin) oder sogar eine entfernte Repo-URL (z.B.
https://git.foo.com/myrepo.git`)zum Beispiel
nachdem Sie den Commit (und die fehlenden Vorfahren) geholt haben, können Sie ihn einfach mit
Beachten Sie, dass dies Sie in den "detached head" Zustand bringt.