Ich bin ein Anfänger in Git und versuchen, den Unterschied zwischen git pull
vs git rebase
zu lernen. Kann mir jemand ein Beispiel geben, wann ich welche Option nutzen soll, da ich denke, dass beide dem gleichen Zweck dienen.Git Pull vs Git Rebase
Antwort
Git-Pull - Holen aus und integriert mit einem anderen Repository oder einer lokalen Niederlassung GIT PULL
Grundsätzlich Sie Remote-Zweig auf Ihrem lokales, Beispiel ziehen:
git pull origin master
Will ziehen Master-Zweig in Ihr lokales Repository
git-rebase - Forward-Port lokale Commits zum aktualisierten Upstream-Kopf GIT REBASE
Dieser lokalen Änderungen oben auf Änderungen vorgenommen remote von anderen Benutzern setzen. Zum Beispiel:
- Sie einige Änderungen zum Beispiel
SOME-FEATURE
genannt auf Ihrer lokale Niederlassung begangen haben - auf anderen Funktionen Dein Freund in der Zwischenzeit arbeitet und er fusionierte seine Niederlassung in Master
Jetzt Sie möchten seine und Ihre Änderungen in Ihrer lokalen Niederlassung sehen. Also dann Kasse Sie master
Zweig:
git checkout master
dann können Sie ziehen:
git pull origin master
und dann gehen Sie zu Ihrer Branche:
git checkout SOME-FEATURE
und Sie können master
do rebase zu bekommen Letzte Änderungen davon und setzen Sie Ihre Branche verpflichtet, oben:
git rebase master
Ich hoffe, jetzt ist es ein bisschen klarer für Sie.
git pull
und git rebase
sind nicht austauschbar, aber sie sind eng miteinander verbunden.
git pull
ruft die neuesten Änderungen des aktuellen Zweigs von einem Remote ab und wendet diese Änderungen auf Ihre lokale Kopie des Zweigs an. Im Allgemeinen erfolgt dies durch Zusammenführen, d. H. Die lokalen Änderungen werden in die entfernten Änderungen zusammengeführt. So ist git pull
git fetch & git merge
ähnlich.
Rebasing ist eine Alternative zum Zusammenführen. Anstatt ein neues Commit zu erstellen, das die beiden Zweige kombiniert, verschiebt es die Commits eines der Zweige über den anderen.
Sie können mit Rebase statt Merge ziehen (git pull --rebase
). Die lokalen Änderungen, die Sie vorgenommen haben, werden über die Remote-Änderungen hinaus neu erstellt, anstatt mit den Remote-Änderungen zusammengeführt zu werden.
Atlassian als einige ausgezeichnete documentation on merging vs. rebasing.
- 1. Understanding „git pull --rebase“ vs „git rebase“
- 2. git Rebase stromaufwärts/Master vs git Pull --rebase stromaufwärts Master
- 3. git pull --rebase vs. git rebase: was ist die gefahr?
- 4. git ziehen VS git holen git rebase
- 5. Git Rebase nach Pull
- 6. Einen Git ziehen Pull --rebase
- 7. Git - Merge vs Rebase
- 8. Git pull --rebase konvertiert Leerzeichen in Tabs
- 9. Mercurial-Äquivalent von "git pull --rebase"
- 10. Zeige abgerufene Commits nach Git Pull --rebase
- 11. Einen Git Pull - Rebase rückgängig machen?
- 12. Unterschied zwischen Git ziehen und Git Pull - Rebase
- 13. Git Post-Rebase Haken
- 14. Git Merge vs Rebase - Auflösung von Konflikten
- 15. Git - Merge vs Rebase für meinen Workflow
- 16. git sicher rebase oder „versuchen rebase, Rückfall auf merge“
- 17. Kann ich einen Alias in git für "pull --rebase" setzen?
- 18. Verwenden von Git-Svn: Pull, Merge oder Rebase?
- 19. Warum schlägt git pull --rebase beim Wiedergeben bestehender Commits fehl?
- 20. Git Rebase Änderung Autor?
- 21. Git Svn Rebase fehlschlägt
- 22. Konflikte mit `git rebase`
- 23. Git Rebase fehlgeschlagen
- 24. erholt von git rebase
- 25. Git: 'Rebase' ist kein Git-Befehl. Siehe 'git --help'
- 26. Unterschiede zwischen git pull Herkunft Master & git pull Herkunft/Master
- 27. git pull tut nichts
- 28. "Git-Pull" gebrochen
- 29. Git Pull: Ändern Authentication
- 30. git update Pull-Anfrage
Haben Sie versucht, die Dokumentation zu lesen? Spoiler: Sie dienen nicht dem gleichen Zweck –
Ich habe die Dokumentation gelesen. Wie ich schon sagte, dass ich ein Anfänger bin und angefangen habe zu lernen. – user4943236
@TimCastelijns können Sie Peters Antwort sehen. Er hat ausdrücklich gesagt, dass diese eng miteinander verbunden sind, und deshalb entstand die Verwirrung und daher habe ich eine Frage gestellt. Kannst du downvote entfernen – user4943236