Удаление измененного файла из запроса на извлечение
В настоящий момент у меня есть 3 измененных файла (без новых файлов).
Я хотел бы удалить один из этих файлов из запроса на перенос, чтобы запрос на перенос содержал только изменения в двух файлах и оставил третий в своем первоначальном, нетронутом состоянии.
Я пробовал пару вещей (проверяя исходную версию файла и т.д.), но он по-прежнему отображается как измененный файл в PR.
Есть ли решение для этого?
Ответы
Ответ 1
Перейдите к ветке, из которой вы создали запрос на перенос:
$ git checkout pull-request-branch
Перезапишите измененный файл с файлом в другой ветке, рассмотрим его мастер:
git checkout origin/master -- src/main/java/HelloWorld.java
Зафиксируйте и нажмите на пульте дистанционного управления:
git commit -m "Removed a modified file from pull request"
git push origin pull-request-branch
Ответ 2
Вы хотите внести изменения в фиксацию, а затем сделать силовое нажатие, которое обновит ветвь с помощью PR.
Вот как я рекомендую вам это сделать:
- Закройте PR, чтобы тот, кто его просматривает, не втягивает его, пока вы не внесете свои изменения.
- Сделайте комманду reset для фиксации до вашего нежелательного изменения (если это последнее комманда, вы можете использовать
git reset --soft HEAD^
или если это другая фиксация, вы хотели бы заменить "HEAD ^" на идентификатор фиксации)
- Отменить (или отменить) любые изменения в файле, который вы не планировали обновлять
- Сделайте новый commit
git commit -a -c ORIG_HEAD
- Принудительное нажатие на ветку
- Re-Open Pull Request
Теперь, когда ваш филиал обновлен, запрос Pull будет содержать ваши изменения.
Ниже приведена ссылка на документацию Gits, где у них есть хороший пример в разделе Отменить фиксацию и повторить.
Ответ 3
Запрос на перенос - это просто: запрос на объединение одной ветки в другую.
Ваш запрос на тягу не "содержит" ничего, это всего лишь маркер, говорящий "пожалуйста, объедините эту ветвь в эту".
Набор изменений PR-шоу в веб-интерфейсе - это всего лишь изменения между ветвью цели и веткой функций. Чтобы изменить запрос на вытягивание, вы должны изменить ветвь вашей функции, возможно, с помощью нажатия кнопки на ветвь функции.
В вашем случае вы, вероятно, захотите внести поправки в свою фиксацию. Не уверен в вашей конкретной ситуации, но некоторая комбинация интерактивной перестройки и add -p
должна сортировать вас.