Zmiana bazy Scalanie przez zmianę bazy jest zaimplementowane w oprogramowaniu git (polecenie rebase) oraz w Darcs (zwane jako ). Scalanie przez zmianę bazy oznacza zmienianie kolejności łat (np. opisów zmian) w taki sposób, że tworzą liniową historię. W efekcie, kiedy dwie łaty są zrobione w tej samej sytuacji, po scalaniu jedna z nich będzie przekształcona w taki sposób, że objawi się jakby była wykonana w kontekście tej drugiej.
Zmiana bazy wymaga, aby dokładne zmiany, które tworzą pliki pochodne, były przechowane lub mogły być odtworzone. Z takich dokładnych zmian jest możliwe określenie, jak jedna z nich powinna być zmieniona, aby następnie uporządkować ją względem drugiej. Na przykład jeśli łata A dodaje linię „X” po linii 7 pliku F, a łata B dodaje linię „Y” po linii 310 pliku F, B musi być przepisane, jeśli następuje zmiana bazy względem A: dodana linia musi być umieszczona po linii 311 pliku F, ponieważ linia dodana przez A przesuwa numery linii o jeden.