Skip to content

Instantly share code, notes, and snippets.

@LionZXY
Last active June 6, 2024 10:03
Show Gist options
  • Save LionZXY/381f38504f270787a2e37e988809c430 to your computer and use it in GitHub Desktop.
Save LionZXY/381f38504f270787a2e37e988809c430 to your computer and use it in GitHub Desktop.
Как создать PR для код-ревью всего проекта

Создание PR по уже запушенному коду

Инструкция про то как создать пуллреквест в уже заполненной единственной ветке. Может быть полезно при единоразовом ревью одного проекта

Общий смысл

  1. Вот мы имеем ветку с коммитами

  1. Создаем пустую ветку и делаем туда пустой коммит

  1. Создаем копию ветки master, которую будем менять (чтобы не трогать ветку master)

  1. Перемещаем пустой коммит из ветки review-1-target в review-1-src. Все! Теперь можно сделать PR между этими ветками, так как у них одинаковый корень.

Практика

  1. Сделаем пустую ветку
git checkout --orphan review-1-target
  1. Если сейчас мы сделаем коммит, то там будут все наши файлы, а нам нужен именно пустой коммит. Удаляем файлы
git rm -f -r .
  1. Проверяем и делаем пустой коммит, если все хорошо
git status

git commit --allow-empty -m 'Empty commit'

  1. Запушим ветку
git push --set-upstream origin review-1-target
  1. Вернемся обратно на master и отпочкуемся на review-1-src
git checkout master && git checkout -b review-1-src
  1. Теперь - самое главное. Перенос пустого коммита в свежесозданную ветку.
git rebase -i review-1-target
  1. У вас откроется редактор. Сохраните файл ничего не меняя. Напомню, что в Vim команда сохранить и выйти :wq
  2. Запушьте ветку
git push -u origin review-1-src
  1. В GitHub зайдите во вкладку "Pull Request", далее нажмите на "New Pull Request"

  1. Выберите нужные ветки и создайте Pull Request

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment