2016-05-10 2 views
2

Установка:Git/GitHub фильтрации запросов тянуть

  • Хранилище принадлежит кому-либо на GitHub, что я раздвоенный работать на внесении изменений
  • Я использую GitHub на моей машине Windows, чтобы тянуть вниз, что вилка к моей системе , где я делаю свои изменения, и в конце дня я фиксирую и синхронизирует свои изменения с моей вилкой.
  • Каждые несколько дней я также (повторно) синхронизируюсь с репозиторием (вверх), чтобы я был в курсе последних изменений. Я делаю это через действия командной строки в Git (для рабочего стола), вытягивая вверх по потоку, а затем объединяя его с моим локальным файлом, прежде чем синхронизировать его с моей собственной вилкой.

Теперь наступает интересная часть. Я также работаю над кодом, когда я нахожусь в офисе. Таким образом, у меня есть аналогичная настройка, где я использую GitHub на работе и вытаскиваю вилку, работаю над файлами, и я фиксирую и синхронизую, прежде чем я приду домой вечером. Когда я вернусь домой, я сдержу все изменения, которые я сделал, чтобы моя локальная копия была синхронизирована с изменениями, которые я делал в течение дня.

Проблема, с которой я сталкиваюсь, - это когда я хочу сделать запрос на тяну с ведущей веткой. Он будет тянуть каждую мелочь из того, что я делал локально, включая постоянную синхронизацию и объединение основного репозитория. Пример можно увидеть здесь:

pull request example

Там также список элементов, для которых это говорит мне FileMode изменилось. Итак, есть ли способ сделать запрос на перенос, где он игнорирует эти слияния с репозиторией upstream (master)? Все коммиты - это мои собственные обязательства перед моей вилкой. Когда я делаю запрос на растяжение, все, что я хочу сделать, это сделать это против финального файла и ведущего мастера. Им не нужно видеть все мои небольшие обновления, которые я делал в течение дня.

Или, должен ли я делать это по-другому?

+0

Вы могли пережать фиксации, но это было бы переписать историю. Еще лучше, вы могли бы раздавить коммиты локально, прежде чем перейти в GitHub. –

+0

Тем не менее, раздача _before_, связанная с GitHub, не будет работать, поскольку я должен совершить GitHub, когда я уйду из офиса, поэтому я могу захватить эти изменения, когда я вернусь домой, и так же, когда я закончил дома, мне нужно совершить вернемся к GitHub, чтобы на следующий день я смог снова сменить эти изменения на работе. – KirAsh4

+0

Нет, я не согласен. «Правда» о вашей отрасли - это то, что на самом деле сидит на GitHub. Если есть сквош-фиксация, то это то, что вы тянете, когда возвращаетесь домой. –

ответ

0

, когда я хочу сделать запрос на тяну с ведущей веткой.

GitHub недавно добавил «Squash your commits»: что позволило бы получить PR все сжато:

https://cloud.githubusercontent.com/assets/143418/14119749/7756ff60-f5a4-11e5-8597-12dcbb363746.png

+0

Когда я создаю запрос на перенос (из моей вилки в восходящий репозиторий), все, что я получаю, это кнопка, которая читает «create pull request». То, что вы показываете мне здесь, мне неизвестно, к сожалению. – KirAsh4

+0

@ KirAsh4, как описано в https://github.com/blog/2141-squash-your-commits, вам необходимо активировать этот режим. – VonC

+0

Правильно, в * my * (forked) репозиторий, эти параметры включены. У меня нет подсказки, если то же самое верно для восходящего репозитория, это не мое. – KirAsh4

Смежные вопросы