The following steps outline how revision controlling a project using a script-based method can be achieved.
- Keep source files external to the project. Ideally, the source files are kept outside of the Vivado build directory.
- Revision control the source repository. All sources should be managed by the
revision control system. Important: When Vivado is using the source files, they should be writable.
- Generate a script to recreate the design.
- Revision control the script. Once the script is created, it is important to manage this file as a source too. As the design changes, this script must be updated to accommodate new sources or to capture new design configurations. It is important that this script is managed like any other design source.
- Test your methodology. Ideally, to ensure no files are missed and the design rebuilds completely from design sources using a script, the design would be regressed at a regular cadence. By rebuilding the design regularly, any issues with the revision control methodology can be caught and addressed in a timely manner.