(первоначально этот ответ считается, что компонент третьей партии пришел от мерзавца репо общественности, @ Яаки-Дорман пояснил, что он получает обновления пути копирования кода компонента из снимок более крупного проекта)
Вы должны поддерживать хранилище с две ветви:
master
: каждый раз, когда вы получаете новый снимок компонента, зафиксировать ее в этой отрасли
tweaks
: ветвь построена на master
ветви, которая содержит коммиты, которые составляют пользовательские ухищрения
Каждый раз, когда вы обновляете «мастер» ветвь с новыми снимками компоненты, перебазироваться в tweaks
ветви на вершине master
отрасль:
$ git rebase master tweaks
Это оставит ваши твики, как эффективно будучи последнее, что случилось.
Так, начиная с самого начала, это то, что это будет выглядеть как в командной строке ...
захватить первый снимок & хранить его на «мастер» ветви
mkdir my-fork-of-shinything
cd my-fork-of-shinything
git init
cp -R /tmp/shinything-snapshot-1 . # copy the snapshot of code into your repo
git add -A // stages ALL directory contents for commit
git commit -m "V1 snapshot of the shinything component"
Это настраивает ветку «мастер».
Добавьте щипки на ветке новой «щипки»
git checkout -b tweaks // creates your new branch
... make your tweaks, commit them
Позже, когда некоторые интересные обновления были сделаны для оригинального компонента ...
захватить новый компонент снимок, обновление «мастер» & «щипки» ветви
git checkout master
rm -Rf * // delete the contents of the old snapshot
cp -R /tmp/shinything-snapshot-2 . // get the brand new snapshot in place
git add -A
git commit -m "V2 snapshot of shinything, brings fix for #234"
Ваш мастер филиал теперь имеет обновленную историю компоненты, с фиксацией для каждого обновления снимка.Наконец перебазироваться филиал «щипки» на главной ветви - каждый из фиксаций на вашей ветке «щипки» будет переигран, один за другим, на верхней части нового наконечника главного отделения:
git rebase master tweaks // re-bases the commits from your tweaks branch
Другие настройки?
Если вам нужно добавить больше настроек, просто проверить ветку, и добавить их:
git checkout tweaks
... make your tweaks, commit them
Будет ли это работать если у меня уже есть свои хитрости, чтобы справиться с мастерством? т.е. Вернитесь назад, когда shixthing был добавлен в репозиторий и создал ветку для хранения обновлений для shinything? –
Я все еще не понимаю, как это сделать в обратном порядке. shinything - это компонент, который недоступен при управлении версиями. Это часть более крупного проекта, и я буду периодически загружать новую версию и добавлять изменения новой версии, которые будут добавлены до моих настроек. –