6 ответов:
(в дополнение к официальному "гитхаб помочь с помощью запросов на странице",
см. также "разветвление против ветвления в GitHub","в чем разница между origin и upstream в GitHub")пара советов по тянуть-запросы:
предполагая, что у вас есть первый раздвоенный РЕПО, вот что вы должны сделать в этой вилке, что вы владеете:
- создать ветка: изолируйте свои модификации в ветке. Не создавайте запрос на вытягивание из
master, где у вас может возникнуть соблазн накопить и смешать несколько модификации сразу.- переместить эту ветку: даже если вы уже сделали запрос на вытягивание из этой ветви, переустановите его поверх
origin/master(убедившись, что ваш патч все еще работает) обновит запрос на вытягивание автоматически (не нужно ничего нажимать)- обновление эта ветка: если ваш запрос на вытягивание отклонен, вы просто можете добавить новые коммиты и/или полностью переделать свою историю: он снова активирует ваш существующий запрос на вытягивание.
- "фокус", что филиал: т. е., сделайте свою тему "жесткой", не изменяйте тысячи классов и все приложения, только добавьте или исправьте четко определенную функцию, сохраняя изменения небольшими.
- удалить эту ветку: после принятия, вы можете безопасно удалить это ветка на вашей вилке (и
git remote prune origin). Графический интерфейс GitHub предложит вам удалить свою ветвь на странице pull-request.Примечание:написать сам запрос на вытягивание, см. "Как написать идеальный запрос тяги" (Январь 2015, GitHub)
март 2016: новый вариант кнопки слияния PR: см. "GitHub squash фиксирует из веб-интерфейса по запросу pull после просмотра комментарии?".
сопровождающий РЕПО может выбрать
merge --squashэти PR-коммиты.
после запроса на вытягивание
относительно последнего пункта, начиная с 10 апреля 2013 года,"переработан кнопку", ветка удалена для вас:
удаление ветвей после слияния также было упрощенный.
вместо подтверждения удаления с дополнительным шагом, мы немедленно удаляем ветку при ее удалении и предоставляем удобную ссылку для восстановления ветки в случае, если она вам снова понадобится.это подтверждает наилучшую практику удаления ветви после слияния запроса на вытягивание.
запрос и запрос-тянуть
pull запрос не является официальным " git" срок.
Git используетrequest-pull(!) команда чтобы построить запрос на слияние:
Он " суммирует изменения между двумя фиксациями стандартного вывода и включает данный URL-адрес в сгенерированную сводку."
Github запускает свою собственную версию с первого дня (февраль 2008 года), а переработал эту функцию в мае 2010 года, указав, что:Pull Request = Compare View + Issues + Commit comments
электронные заметки для " reposotory" (sic)
<humour>это (запрос на вытягивание) даже не определено должным образом GitHub!
к счастью, истинная организация Бизнес-Новостей будет знать, и есть e-примечание для замены тяги-заменить на 'e-Примечание':
так что если ваш РЕПОoТори нужна электронная записка... спросите Фокс бизнес. Они в курсе.
</humour>
чтобы узнать, как сделать запрос на вытягивание, я просто следовал двум отдельным страницам справки на Github (см. ниже в качестве маркерных точек). Следующие команды командной строки предназначены для Часть 1. Часть 2, фактический запрос на вытягивание, полностью выполняется на веб-сайте Github.
$ git clone https://github.com/tim-peterson/dwolla-php.git $ cd dwolla-php $ git remote add upstream https://github.com/Dwolla/dwolla-php.git $ git fetch upstream // make your changes to this newly cloned, local repo $ git add . $ git commit -m '1st commit to dwolla' $ git push origin master
Часть 1: fork чье-то РЕПО:https://help.github.com/articles/fork-a-repo
- нажмите кнопку "вилка" на панели РЕПО вы хотите внести свой вклад, в этом случае: PHP РЕПО Dwolla (Dwolla/dwolla-php)
- получить URL для вновь созданной вилки, в этом случае:https://github.com/tim-peterson/dwolla-php.git (tim-peterson / dwolla-php)
- введите
git clone->cd dwolla-php->git remote->git fetchпоследовательность выше, чтобы клонировать вилку где-то в вашем компьютере (т. е. "копировать/вставить" его, в этом случае:third_party TimPeterson$) и синхронизировать его с мастер-РЕПО (Dwolla/dwolla-php)- сделать ваши изменения в локальном РЕПО
- введите
git add->git commit->git pushпоследовательность выше, чтобы подтолкнуть ваши изменения к удаленному РЕПО, т. е. ваша вилка на Github (tim-peterson/dwolla-php)Часть 2: сделать pull-запрос:https://help.github.com/articles/using-pull-requests
- на твоя вилка веб-страница на Github (https://github.com/tim-peterson/dwolla-php)
- клик кнопка 'pull-request'
- дайте pull-запрос имя, заполните подробную информацию о том, какие изменения вы сделали, нажмите кнопку Отправить.
- ты молодец!!
для того чтобы сделать запрос, вам нужно выполнить следующие действия:
- Fork репозиторий (к которому вы хотите сделать запрос на вытягивание). Просто нажмите кнопку fork на странице репозитория, и у вас будет отдельный репозиторий github, которому предшествует ваше имя пользователя github.
- клонировать репозиторий на локальную машину. Программное обеспечение Github, установленное на локальном компьютере, может сделать это за вас. Нажмите кнопку клонировать рядом с хранилищем имя.
- внести локальные изменения / фиксации в файлы
- синхронизировать изменения
- перейдите в свой раздвоенный репозиторий github и нажмите зеленую кнопку "Сравнить и просмотреть" помимо кнопки ветви. (Кнопка имеет значок - нет текста)
- откроется новая страница, показывающая ваши изменения, а затем нажмите ссылку pull request, которая отправит запрос первоначальному владельцу репозитория, который вы разветвляли.
Мне потребовалось некоторое время, чтобы понять это, надеюсь, что это поможет кому-нибудь.
я начал проект, чтобы помочь людям сделать свой первый запрос GitHub pull. Вы можете сделать практический учебник для сделайте свой первый пиар здесь
рабочий процесс прост, как
- вилка РЕПО в github
- получить клон url, нажав на кнопку Clone repo
- перейти к терминалу и запустить
git clone <clone url you copied earlier>- сделать ветку для изменений, которые вы делаете
git checkout -b branch-name- внести необходимые изменения
- зафиксировать изменения
git commit- нажмите ваши изменения в вилку на GitHub
git push origin branch-name- перейдите к своей вилке на GitHub, чтобы увидеть
- нажмите на него и дайте необходимые сведения
для тех из нас, у кого есть github.com но только получить неприятное сообщение об ошибке, когда мы вводим "git" в командной строке, вот как это сделать все в вашем браузере:)
- Так же, как Тим и Фархан писали: Fork свою собственную копию проекта:
![]()
- через несколько секунд вы будете перенаправлены на свою собственную разветвленную копию проекта:
![]()
- перейдите к файлам, которые вам нужно изменить, и нажмите " Изменить это файл" на панели инструментов:
![]()
- после редактирования напишите несколько слов, описывающих изменения, а затем" зафиксируйте изменения", а также в главной ветке (поскольку это только ваша собственная копия, а не" основной " проект).
![]()
- повторите шаги 3 и 4 для всех файлов, которые необходимо отредактировать, а затем вернитесь к корню копия проекта. Там нажмите на зеленую кнопку " Сравнить, просмотреть..." кнопка:
![]()
- наконец, нажмите кнопку "Создать запрос" ..а затем "создать запрос на вытягивание"снова после того как вы дважды проверили заголовок и описание вашего запроса :
![]()
я следовал инструкциям Тима Петерсона, но я создал локальную ветвь для моих изменений. Однако после нажатия я не видел новую ветку в GitHub. Решение состояло в том, чтобы добавить -u к команде push:
git push -u origin <branch>









Comments