Разница между git pull --rebase и git pull --ff-only
скажем origin/master совершил A--B--C и меня local/master совершил A--B--D.
что произойдет, если я использую git pull --rebase ?
что произойдет, если я использую git pull --ff-only ?
есть ли разница в результирующем дереве фиксации ?
1 ответ:
что произойдет, если я использую git pull --rebase ?
git pull --rebase- это примерно эквивалентноgit fetch git rebase origin/masterт. е. ваши удаленные изменения (
C) будет применяться до локальных изменений (D), что приводит к следующим дереваA -- B -- C -- D
что произойдет, если я использую git pull --ff-only ?
это не удастся.
git pull --ff-onlyсоответствует кgit fetch git merge --ff-only origin/master
--ff-onlyприменяет удаленные изменения только в том случае, если они могут быть быстро переадресованы. От мужчины:отказ от слияния и выхода с ненулевым статусом, если текущая головка уже не обновлена или слияние не может быть разрешено как быстрая перемотка вперед
поскольку ваши локальные и удаленные ветви разошлись, они не могут быть решены с помощью быстрой перемотки вперед и
git pull --ff-onlyпотерпит неудачу.