Как сохранить несколько изменений и отменить все другие изменения в локальной ветке git? - PullRequest
0 голосов
/ 30 ноября 2018

Я локально зафиксировал несколько изменений (хотел) в локальной ветке.Я хочу перебазировать мою локальную ветку на удаленный мастер, который был обновлен с исправлениями.Но есть другие модификации / неотслеживаемые файлы (очень много), которые я не хочу сохранять.Теперь я могу сделать 'git stash', затем 'git stash drop' и т. Д., Но это отменит все изменения, включая требуемые.Я не уверен, как это сделать, так как я новичок в git-репозитории.Кто-нибудь может помочь с пошаговым процессом для достижения этой цели?

Ответы [ 2 ]

0 голосов
/ 30 ноября 2018

Если вы хотите выбросить все незафиксированные изменения в вашем рабочем каталоге, вы должны использовать git-reset

git reset --hard

Объединить удаленный мастер с вашей веткой

git rebase master <your_branch>

В случае возникновения каких-либо конфликтов исправьте их и продолжите перебазирование

git rebase --continue

Удалите все неотслеживаемые файлы и каталоги.(-f это force, -d это remove directories) git clean -fdx

0 голосов
/ 30 ноября 2018

Используйте git add <filename> для добавления файлов вместо добавления всех изменений.Используйте git add -p для добавления частей файлов.

Проверьте код постановки с помощью git diff --cached.С помощью git diff убедитесь, что в неотмеченных файлах нет ничего, что вы хотите добавить.

Фиксация: git commit.

Отмена изменений в неустановленной последовательности: git reset --hard HEAD.

Теперь вы готовы сделать ребаз.

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