Как мне слить локально мастер и форк в git? - PullRequest
1 голос
/ 10 октября 2011

Мне нужно использовать Active_admin с Formtastic 2, а основная ветвь еще не поддерживает его.

Пару недель назад кто-то сделал форк для поддержки Formtastic 2, но затем в мастер были добавлены другие дополнения.ветви и не были переданы на развилку.И теперь вилка устарела с другими вещами, но все же поддерживает Formtastic.

Как я могу объединить их локально на моем компьютере с помощью git?

Ответы [ 2 ]

1 голос
/ 10 октября 2011

Этот самый простой способ - переключиться на локальную ветку formtastic, а затем запустить git merge master, чтобы объединить изменения основной ветки (возможно, вам придется иметь дело с конфликтами после этого):

git branch formtastic
git merge master

Если вы хотите, чтобы ваша история была немного более структурированной, вы можете вместо этого сделать перебазировку:

git branch formtastic
git rebase -i master

Перебазировка сделает вашу историю чище, потому что, как она работает, она берет все изменения, которые вы сделали в formtastic, и кеширует их, затем объединяет новые изменения с master, затем переигрывает ваши изменения formtastic сверху. Это может занять немного больше работы, чем простое слияние (и вам придется поискать ребазинг, чтобы понять, как это работает).

В любом случае, после того, как в вашей ветви все будет бесконфликтно, проверено и зафиксировано, вы можете вернуться и объединить свои изменения в master следующим образом:

git branch master
git merge formtastic
0 голосов
/ 20 ноября 2012

Вам необходимо добавить новую удаленную ссылку на ваше обратное репо, причем обратное репо - это оригинальное репо, которое вы разветвили.См .:

enter image description here

git remote add upstream https://github.com/gregbell/active_admin

Затем вы можете выбрать / извлечь из upstream и обновить свою собственную локальную ветвь.
Различные варианты описаны в" Как очистить мою вилку Github, чтобы я мог делать запросы на чистое извлечение?".

...