Что такое git эквивалентно "p4 unshelve", чтобы сбить изменения другого коммита? - PullRequest
0 голосов
/ 22 декабря 2018

Есть ли способ сделать эквивалентную "p4 unshelve" как команду git, чтобы перенести изменения другого коммита в ваш собственный репозиторий?

Например, есть ли способ "отменить" несколько коммитов git наваша локальная копия репозитория git и все они как неотслеживаемые изменения?

Ответы [ 2 ]

0 голосов
/ 23 декабря 2018

Если в цепочке есть несколько коммитов git, которые вы хотите применить, вы можете использовать git rebase -i --onto DESTINATION UNTIL BRANCH, чтобы использовать редактор для интерактивного выбора коммитов в диапазоне BRANCH..UNTIL, который вы хотите.

Обратите внимание, что если BRANCH является хешем коммита, в итоге вы получите отсоединенную головку, которая должна быть такой же хорошей (если не лучшей), как не отслеживаемые изменения.Если вы действительно должны иметь неотслеживаемые изменения, просто сделайте git reset DESTINATION впоследствии.

0 голосов
/ 22 декабря 2018

Для этого я использовал:

git cherry-pick <commits> -n; git reset

cherry-pick внес изменения комита в мое локальное рабочее пространство, а флаг -n означал, что он еще не был преобразован в новый коммит.Для получения дополнительной информации: https://git -scm.com / docs / git-cherry-pick

git reset unstaged файлы.
Для получения дополнительной информации: http://data.agaric.com/undo-git-add-remove-files-staged-git-commit

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