Rebase фиксируется с добавленным текстом - PullRequest
0 голосов
/ 12 октября 2018

Допустим, я работаю над своим локальным репозиторием и часто выполняю коммиты при редактировании одного файла - brandNewFile.txt.Таким образом, перед началом, в исходном коммите у нас есть только одна строка текста: "It's a nice day".
Теперь мы добавляем одну строку в конец файла, состоящую только из текста "generic1", и создаем новый коммит (A).
Это повторяется еще раз со строкой "generic2", что приводит к фиксации B. У нас получилось 2 новых фиксации (A и B).

Теперь, прежде чем перейти к удаленному репозиторию, где у всех есть доступ, я решаю немного очистить историю и просто сохранить то, что я считаю значимыми коммитами, связанными с операцией, которой я былделает.

Итак, я сделаю ребаз, начиная с исходного коммита, но отбросив A, применяя (выбрав) B. Как только начнется ребаз, появится следующий вывод, следующий за применением B:

Unmerged paths:
(use "git reset HEAD <file>..." to unstage)
(use "git add <file>..." to mark resolution)

both modified:   brandNewFile.txt

no changes added to commit (use "git add" and/or "git commit -a")

Зачем сообщать о конфликте, когда все, что мне нужно, это один коммит, который добавляет одну строку текста для размещения "поверх" уже существующего коммита?
Для меня этоне выполняется операция слияния, хотя исход, похоже, предполагает, что это именно то, что происходит.

1 Ответ

0 голосов
/ 12 октября 2018

Это потому, что ваш начальный коммит имеет только одну строку:

It's a nice day

А коммит B имеет три строки

It's a nice day
generic1
generic2

Теперь, когда rebase объединяет коммит B в начальный коммит,это конфликт.Rebase должен удалить строку 2 (generic1) из начального коммита, но начальный коммит имеет только 1 строку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...