Наш проект использует git в течение недели или около того, и мы все очень наслаждаемся им (использование его в жесткой совместной группе оказывается совсем другим git-опытом). Чтобы все было как можно проще, мы не делаем никаких изменений или изменений в истории. Но за первую неделю мы допустили несколько ошибок. Было сделано несколько коммитов, которые не должны были быть выполнены, и нам удалось объединить ветвь функции в неправильную ветку интеграции (1.1 вместо 1.0). И мы не узнали об этих вещах, пока они не вошли в нашу историю.Каковы практические последствия перезаписи истории GIT?
Теперь я вижу много предупреждений об истории перезаписи, но я не совсем уверен, что понимаю опасения. Мы используем общий открытый репозиторий, и все ветви нажимаются туда для резервного копирования.
Я бы ожидал, что если вы перепишете историю (например, удалите фиксацию), полный список последующих коммитов «потеряет», которые совершают (и, возможно, не компилируются/работают). Я также ожидал бы, что, если это произойдет, я мог бы фактически исправить это в верхней части истории (и просто оставить эту часть истории некомпилирующей).
- Если я переписываю историю (и все компилируется/работает во всех затронутых ветвях), мои сотрудники должны делать какие-либо специальные команды)? (Другими словами, будут ли они «знать, что я это сделал», если бы я сделал это хорошо?)
- Будут ли какие-либо пользователи с локальными изменениями, о которых я не знаю, имеют право на слияние сбоев при git pull?
- Я пропустил что-то важное здесь?
Любые ссылки на статьи/учебные пособия по этому вопросу также были бы очень приятными.
Вы работаете среди команды других людей, и вы не перебазите ?! Как вы обеспечиваете, чтобы все происходило в правильном порядке ?! – Goober
@Goober: Наивный ответ от меня здесь, это проблема? Мы тестируем тест, поэтому я считаю, что мы его поймаем. – krosenvold