Как original poor explainer commenter, я могу уточнить, что я имел в виду.
В отличие от многих команд Git (например, проверки), которые обновляют ваш репо/индекс/WorkDir, а затем возвращают управление обратно к вам, возможно, для мерзавец, чтобы выйти из в серединеmerge или rebase и дать контроль назад к пользователю. Это особенно важно, потому что это дает вам возможность разрешить конфликты слияния, прежде чем продолжить слияние или переустановку.
git merge --abort
git rebase --continue | --skip | --abort | --edit-todo
Если merge терпит неудачу, мерзавец покажет вам это сообщение:
Автоматическое слияние не удалось; исправить конфликты и затем зафиксировать результат.
И во время rebase, мерзавец покажет вам это сообщение:
Не удалось объединить изменения.
Patch потерпел неудачу в (шаг)
Когда вы решили эту проблему запустить "мерзавца перебазироваться --continue". Если вы предпочли бы пропустить этот патч, вместо этого запустите «git rebase -skip». Чтобы восстановить исходную ветвь и остановить перезагрузку «git rebase --abort».
В любом случае работает git status
перечислю некоторые файлы как
# Unmerged paths:
# (use "git add/rm ..." as appropriate to mark resolution)
#
# both modified: YOURFILE
#
Он никогда особо не противоречит здравому смыслу, , если вы ожидаете мерзавец либо удастся полностью или не сразу перед возвратом управления к вам. Вы также можете столкнуться с проблемами, если вы оставите каталог в середине слияния или переустановки, забудьте об этом и вернетесь к нему позже, ожидая, что он будет работать как обычно. Один полезный метод - add your branch name and merge state onto your shell prompt, который я нашел полезным, чтобы помнить, в каком состоянии работает мой рабочий каталог в любой момент времени.
«и git может уступить вам контроль» --- Я уверен, что он неявно упоминает конфликты слияния, которые необходимо разрешить вручную. Таким образом, они являются сдержанными, потому что не каждый слияние/переустановка может выполняться таким же образом <---- просто предположение. – zerkms