You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Ricardo Barbedo 950d45d117 Fix write project script to support 2016.4 7 years ago
scripts Fix write project script to support 2016.4 7 years ago
README.md Improve readme 7 years ago
init.tcl Initial commit 8 years ago

README.md

vivado-git

Trying to make Vivado more git-friendly on Windows.

Requirements

  • Git for Windows
  • Add C:\Program Files\Git\bin (or wherever you have your git.exe) to your PATH

Installation

Add init.tcl (or append the relevant lines if you already have something in it) along with the scripts directory to %APPDATA%\Roaming\Xilinx\Vivado.

How it works

Vivado is a pain in the ass to source control decently, so these scripts provide:

  • A modified write_project_tcl_git.tcl script to generate the project script without absolute paths.

  • A git wrapper that will recreate the project script and add it before committing.

Workflow

  1. When first starting with a project, create it in a folder called work (eg. C:/.../PROJECT_NAME/work) . All the untracked files will be under this directory.

  2. Place your source files anywhere you want in your project folder (usually in the C:/.../PROJECT_NAME/src).

    Here is an example of a possible project structure:

    PROJECT_NAME
        ├── .git
        ├── .gitignore
        ├── project_name.tcl         # Project generator script
        ├── src/                     # Tracked source files
        │   ├── *.v
        │   ├── *.vhd
        │   └── ...
        └── work/                    # Untracked generated files
            ├── project_name.xpr 
            ├── project_name.cache/
            ├── project_name.hw/
            ├── project_name.sim/
            └── ...
    
  3. Initiate the git repository with git init on the Tcl Console. This will create the repository, automatically change to your project directory (C:/.../PROJECT_NAME), generate the .gitignore file and stage it.

  4. Stage your source files with git add.

  5. When you are done, git commit your project. A PROJECT_NAME.tcl script will be created in your C:/.../PROJECT_NAME folder and added to your commit.

  6. When opening the project after a cloning, do it by using Tools -> Run Tcl Script... and selecting the PROJECT_NAME.tcl file created earlier. This will regenerate the project so that you can continue working.