LINUX.ORG.RU

как включить чужой GIT проект в свой?


0

2

Всем привет,

Хочу сделать примерно следующее: проект для одной встроенной (embedded) железяки. На железке будет крутиться Линукс, поэтому будет состоять из стандартных частей, как: бутлоадер, кернел, buildroot для генерации rootfs и тулчейна, мои программы, доки. На всё это дело хочу сделать один GIT репозиторий, который буду дополнительно хранить на нашем минисервере. Так вот я не соображу (мало опыта с GIT-ом), как можно сделать так, чтобы к примеру кернел синхронизировать со репозиторием Линуса, чтоб не привязываться к конкретной версии ядра. И при этом хранить его в моём репозитории, чтоб легче работать с целой системой.
Т.е. захожу в свою Kernel директорию, делаю там что-то вроде:
- «git clone linus-linux.git»,
- «git checkout 3.3»,

в своём ГИТ репозитории добавляю ядро :

- «git add Kernel/linux»,
- «git commit»
- «git push»

Но, как я понимаю, при этом теряется гит информация ядра, которую я стянул в первом шаге.
Естесственно вопросы: ЧЯДНТ и возможно ли такое в ГИТе?
Извините за немного сумбурное изложение - пятница :)

Заранее спасибо


http://book.git-scm.com/5_submodules.html
Но в случае с ядром предполагаемый Вами путь не самый удачный, так как, как правило производители железа, на примере TexasInstruments или FreeScale, не имеют полной поддержки своего железа в upstream и распространяют предыдущие версии ядра со своими патчами.

imb ★★
()
Ответ на: комментарий от imb

Путь как раз удачный. У себя хранить и мейнтейнить патчи. К тому же submodule можно привязать к конкретной ревизии.

iSage ★★★★
()
Ответ на: комментарий от imb

Спасибо Вам за ссылку. Обязательно вечером почитаю. Что до моего железа, то тут мне повезло больше. Я выбрал AT91SAM9G45 контроллер от Атмела. Тут ребята постарались - у них полная поддержка в mainstream. Причем они уже довольно стабильны - почти никаких принципиальных изменений в последних версиях. Правда, как Вы сами понимаете, приходится определять свой board файл под моё железо и кой-чего подправлять в их драйверах под свои нужды.

Ещё раз спасибо

velikS
() автор топика

обычно делают скрипт, который будет клонировать перед сборкой другие репозитории.

nCdy
()
Ответ на: комментарий от nCdy

обычно делают скрипт, который будет клонировать перед сборкой другие репозитории.

Собсна так я и думал сперва делать: наплодить репозиториев на мой проект + каждый такой OpenSource проект (у меня их как минимум 2: кернел и билдрут) ну и переключать «git remote» на мой или на скачанный репозиторий. Ну и естессно переключение/скачивание перед компиляцией через скрипты. Но всё это - костыли, которых можно избежать. Куда элегантнее, когда репозиторий у проекта всего один. Похоже submodules в гите такое позволяет....

velikS
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.