Почему git cherry-pick оставляет незафиксированные изменения выходами с ненулевым
Очень часто мой мерзавец выглядит так:
A <- B <- C <- D <- E <- HEAD
Бывает, что мне нужно создать новую ветку на основе B
и только изменения в D
, Вот команды, которые я делаю:
git checkout B -q -f -b release
git cherry-pick D
Команды вишневого пика выходят с кодом 53 и оставляют все изменения в D
незафиксировано в филиале release
,
Больше информации: это под Windows. Приведенные выше команды являются частью моего процесса выпуска, который я запускаю под PowerShell. Когда я делаю ту же процедуру в Git Bash, вишневый кирка работает просто отлично. Это (еще одна) проблема EOL? Я пытался добавить -Xignore-all-space
но ошибка остается.
Контекст: как часть процесса выпуска, я выбираю обрезанный коммит (например, B
), измените файлы версий, включив время сборки, автора релиза и т. д. Непосредственно перед тем, как я смогу зафиксировать свои изменения версий, кто-то еще вводит коммит C
, Когда я фиксирую свои изменения версий, он становится D
, Мой процесс выпуска выше, чтобы убедиться, что двоичные файлы скомпилированы с A <- B <- D
, Как я могу сделать это гладко?
1 ответ
Проблема была в моем ПУТИ вар. Я установил это как:
set PATH=%PATH%;"C:\Program Files (x86)\Git\mingw32\bin"
Я изменился на:
set PATH=%PATH%;C:\Program Files (x86)\Git\mingw32\bin
И проблема была решена.