Porównując ze standardem push/pull, jakie są zalety używania polecenia rebase w Mercurial?Co jest zaletą polecenia rebase w Mercurial?
Odpowiedz
This post ma ładne wyjaśnienie:
Odpowiedź leży w podścielanie. Rebasing to technika upowszechniana przez gita, w której przepisujesz swoje jeszcze nie pchane łaty, tak aby były stosowane przeciwko aktualnej, zdalnej końcówce, a nie przeciwko czubkowi repozytorium, z którego ostatnio korzystałeś. Korzyścią jest to, że twoja historia scalania pokazuje użyteczne scalenia - połączenia między głównymi gałęziami - zamiast po prostu każdego scalenia, jakie zrobiłeś z repozytorium wyższego szczebla.
Normalne ciągnięcie, scalanie, sekwencja wypychania utworzy liczbę zatwierdzeń, które nie są zbyt przydatne pod względem historii repozytorium. Rebasing pomaga wyeliminować te.
Jeśli wykonasz sekwencję push-merge-push i uzyskasz "scalenie", możesz zawsze "wycofać" zatwierdzenie "scalania". W ten sposób masz łatwy sposób na "cofnięcie pchnięcia". Nie wiem, czy istnieje równoważny łatwy sposób, gdy używam rebase.
Polecenie rebase pominie operację scalania, nie będzie więc konieczności wycofywania się ze złego scalenia. – Vincent
Nie rozumiem twojego komentarza .. Chodzi mi o to, że używając scalania, łatwo jest "wycofać" złe pushowanie. Jak to zrobić z rebase? – Guy
Podczas korzystania z polecenia rebase nie ma operacji scalania. Więc nie można mieć "złego scalenia". Jeśli wykonasz push po przebiciu, a to nie jest dobre, zawsze możesz się wycofać. – Vincent
- 1. Co jest zaletą Jikes RVM
- 2. Mercurial odpowiednik "git pull --rebase"
- 3. Co jest zaletą korzystania z interfejsów
- 4. Co jest zaletą apklib ze słoika?
- 5. Co jest zaletą korzystania z COM w zwykłym DLL?
- 6. Co jest zaletą korzystania ze statycznego NSString dla CellIdentifier?
- 7. Co jest zaletą zdefiniowania jakiejś funkcji poza klasą w pythonowym programie?
- 8. Co jest zaletą rozwiązania SMT do rozwiązywania problemów z CSP-solver w rozwiązywaniu ograniczeń?
- 9. `git svn rebase` kontra` git rebase trunk`
- 10. Co dokładnie robi git w "rebase --preserve-scala" zrobić
- 11. Co to jest odpowiednik polecenia powłoki collection.getIndexes() w pymongo?
- 12. Nie mogę git rebase - już jest aktywny
- 13. Zaletą stosując metodę w OOP JavaScript
- 14. Jak wyświetlić polecenia Mercurial wydane przez Tortoise HG?
- 15. Git: 'rebase' nie jest poleceniem git. Zobacz "git --help"
- 16. git rebase po odciągnięciu
- 17. Co jest odpowiednikiem linuksowego polecenia "free" na FreeBSD v8.1
- 18. Oddział Git rozdzielił się po przebiciu, więc po co rebase?
- 19. Co to jest odpowiednik polecenia wsadowego ECHO przy użyciu VBScript?
- 20. Co jest importowane za pomocą polecenia importowania Gjs?
- 21. Zaletą korzystania IActionResult jako typ spowodować Akcje
- 22. Rebase tylko część gałęzi
- 23. Autor zmiany Git rebase?
- 24. git rebase jeden commit
- 25. Zaletą ustawienie czcionki rozmiarze większym niż 100%
- 26. Co to jest wiersz polecenia systemu Windows równoważny dla polecenia unix "ls -lah"?
- 27. git - rebase ruiny łączą się
- 28. Rebase a merge commit
- 29. Co to jest metoda Git do publikowania kolejki poprawek?
- 30. Mercurial: Jak przywrócić po zmianie bazy
Wyczyść odpowiedź, dziękuję Vincent. Z mojej perspektywy jednak myślę, że gdyby to wszystko było możliwe, nie byłoby warte dodania nowej funkcji i nowej koncepcji dla użytkowników. –
nie musisz używać przebijania, zawsze możesz rozgałęziać się i scalać. iirc rebase nie jest domyślnie włączony w mecurial –
@jk Jeśli domyślnie nie jest włączony, czy dobrym pomysłem jest poproszenie wszystkich programistów o włączenie? Co się stanie, jeśli ktoś tego nie zrobi? – Vincent