Перейти к содержанию
    

Проект в Vivado и Система контроля версий.

Добрый день, форумчане! Встал вопрос о внедрении системы контроля версий (Git) в процесс проектирования с использованием САПР Vivado. Немного покопавшись в этих самых интернетах, вычитал, что народ создает файловую структуру рядом с проектом, в которой хранятся исходники проекта (*.v, *.vhdl, *.xci, *.elf и прочее и прочее). Собственно, эту самую структуру и засовывают в СКВ. Далее вопрос:

Как заполнить эту самую структуру перед коммитом?

*Мысли в слух*

Вариант 1. У меня есть отлаженный проект. И я ручками/не ручками (скриптами) из финальной версии проекта перетаскиваю в файловую структуру для СКВ все исходники. При этом в IDE исходники подключены из папки проекта. Коммитим. Когда вытаскиваем данный коммит (pull) из СКВ ручками/скриптами подсовываем в директорию проекта, затем собираем.

Вариант 2. У меня есть неотлаженный проект. Я по мере допиливания проекта добавляю IP и исходники, затем ручками перетаскиваю во внешние папки и далее в IDE указываю расположение исходников во внешних папках. В финальной версии проекта перед коммитом все файлы уже на своих местах, т.е. в файловой структуре для СКВ. Коммитим. При вытаскивании из СКВ файлы исходников автоматически подменятся и останется только собрать проект.

Вариант 3. Накатать скрипт, который из финальной версии проекта вытаскивает нужные исходники и генерирует скрипт, который на основании исходников создает проект с нуля (recreate). Все это добро коммитится. 

Вариант 4. Мыслю вообще не в том направлении.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

Думаю что единого правильного решения пока нет. Каждый делает так как будет ему удобно и привычно.

Я например сразу делаю все исходники внешними к проекту. Сам же проект воссоздается скриптом.  Удобно при работе с СКВ, но и минусы есть так как надо не забывать експортировать изменения в проекте (в основном BD, и сам файл проекта). Но это легко автоматизируется скриптами. 

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

13 minutes ago, RobFPGA said:

Приветствую!

Думаю что единого правильного решения пока нет. Каждый делает так как будет ему удобно и привычно.

Я например сразу делаю все исходники внешними к проекту. Сам же проект воссоздается скриптом.  Удобно при работе с СКВ, но и минусы есть так как надо не забывать експортировать изменения в проекте (в основном BD, и сам файл проекта). Но это легко автоматизируется скриптами. 

Удачи! Rob.

В Вашем случае исходные файлы проекта лежат извне и Вы с ними оперируете, как в части Vivado, так и в части СКВ. Но если я знаю, какие файлы моего проекта для сборки необходимо коммитить, что мне мешает в .gitignore загнать весь мусор и работать из директории проекта? В чем прелесть Вашего подхода?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

24 minutes ago, 5EN5E said:

В чем прелесть Вашего подхода?

Мне такой подход нравится - в этом и прелесть :biggrin:

Проблема в вашем варианте может быть в том что  проект Vivado тяжело переносим - при попытке clone на другую машину вы скорее всего получите нерабочий проект с кучей глюков из за путей файлов.

Удачи. Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поищите апп ноте от Xilinx по поводу использования СКВ, там есть рекомендации как  заводить над их проектами СКВ. Но вообщем RobFPGA по сути сказал что там написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

RobFPGA, vitus_strom, спасибо большое за ответы, мрака в голове стало чуть меньше:smile:

Изменено пользователем 5EN5E

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

У меня все исходники отдельно под СКВ и скрипты для Vivado там же. Тогда сам проект хранить не нужно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...