Vivado版本控制

如果您有幸进入FPGA领域,那么会遇到版本控制问题,本文讲解的是如何用git进行Vivado进行版本控制。

  1. 搭建Git环境

一 首先需要一个git环境,并选择一个托管平台(github,gitlab,gitee)
Git下载地址:
https://git-scm.com/downloadhttps://git-scm.com/download

Vivado版本控制-LMLPHP

2 VIVADO工程代码说明

2.1 工程文件内容
(1)工程文件: .xpr
(2)代码文件 :srcs目录 /srcs/
.xdc (约束文件)
/srcs/.v (工程文件)
/srcs/
.vh (头文件)
/srcs/.hdl (设计文件)
/srcs/
.bd (模块设计文件)
/srcs/*.xci (ip核文件)
.sdk SDK 环境代码, ZYNQ 设计中关于 PS 端的代码
.sim 仿真文件
3)脚本文件:
*.tcl 控制台脚本文件
.bat (.sh) 创建工程脚本文件
2.2 上传内容
Git管理工程文件、代码文件、脚本文件, 三个文件即可。

3 代码管理Git的使用

3.1 创建项目
※上传本地代码文件到git仓库
在代码所在目录下执行下面命令:

$ git init (初始化仓库)
$ git add . (这里的.表示添加所有文件,也可以自定义添加)
$ git commit -m ‘添加的注释信息’// git commit -m ‘原始版本上传’
$ git remote add origin ‘url’  //例如:git remote add origin http://192.168.178.28/cnyt/ococ.git
$ git push -u origin master

注:如果项目为管理员或项目负责人创建,那么则不需要自己创建项目,需要管理员提供项目链接,如:http://192.168.178.28/cnyt_app/ ococ_app.git
那么直接git clone 即可。

$  git clone  http://192.168.178.28/cnyt_app/ococ_app.git

如果拉取某个分支,比如develop分支,可用下面命令。

$ git clone -b develop http://192.168.178.28/cnyt_app/ococ_app.git

3.2 建本地分支并上传分支

A在当前仓库中,使用“git branch”命令加上分支名称即可创建本地分支。

$ git branch develop

这样就建立了一个名为“develop”的新分支。

B 用“git branch”命令可以查看当前所有分支及其状态。

$ git branch

当前有二个分支,master与develop.

其中, “*”号所在的分支就是当前所在的分支,“master”是默认创建的主分支,而“develop”是新建的分支。

C 切换分支
如果需要切换到“develop”分支,可以使用“git checkout”命令进行切换。

$ git checkout develop

切换到“develop”分支后,可以在这个分支上进行代码修改和提交。
D 查看当前分支
如果需要查看当前所处的分支,可以使用“git status”命令查看状态信息。

$ git status

E 从远端目标分支(master) copy代码

$ git pull origin master

F 将本地新建的分支(develop)同步到服务器

$ git push origin develop

这样,在Gitlab端,就看到了分支develop信息。

3.3 克隆项目(下载代码)
开始做一个项目时需要克隆项目代码,用下面命令:

$ git clone http://192.168.178.28/cnyt/Ococ_app.git

或者

$ git clone git@192.168.178.28:cnyt/ ococ_app.git

3.4 切换分支

$ git checkout develop

也可直接克隆分支,如下:

$ git clone -b develop git@192.168.178.28:cnyt/Ococ_app.git

例:`

 git clone -b develop git@192.168.178.28:cnyt/ococ_app.git`

3.5 拉取代码
开发过程中,要拉取(获取)最新代码,用以下命令:

$ git pull

3.6 提交更改

$ git add .     (. 代表所有,也可具体到某一个文件)
$ git commit -m ‘注释’
$ git push

其中,“git add .”命令将所有修改的文件添加到本地提交中,“git commit -m”命令将提交添加到本地仓库,并为其添加一条注释,“git push”命令将本地提交推送到GitLab服务器。

3.7 拉取分支代码
在使用Git进行版本控制的过程中,经常需要拉取某个分支的代码。这里将介绍Git拉取某个分支代码的步骤。
前提条件,新建一个目录,在目录下右键启动git bash
A 初始化

$ git init

B 克隆代码

$ git clone git@192.168.178.28:cnyt/Ococ_app_TSN.git

C获取远程仓库中所有分支信息并保存到本地

$ git fetch

D 查看所有分支信息

$ git branch -a

E 切换到某个分支

$ git checkout < branch_name >

其中,<branch_name>是需要切换到的分支名称。这个命令会将当前分支切换为指定的分支,并更新本地代码。

F 拉取代码

$ git pull origin <branch_name>

其中,<branch_name>是需要拉取的分支名称。该命令会从远程仓库获取最新代码,并将代码合并到本地文件夹中。
G 查看当前状态

$ git status

3.8 打标签
3.8.1 查看标签

$ git tag

3.8.2 打标签
在 Git 中创建附注标签十分简单。 最简单的方式是当你在运行 tag 命令时指定 -a 选项:

$ git tag -a v1.5 -m "my version 1.5"

3.8.3 将标签推送远程仓库

#推送标签v1.5到远程仓库

$ git push origin v1.5

#将所有标签推送到远程仓库

$ git push origin --tags

3.9 Git常用命令

用户名: $ git config user.name 
邮箱:$ git config user.email
密码:$ git config user.password  
用户名:$ git config --global --replace-all user.name "要修改的用户名"
邮箱: $ git config --global --replace-all user.email"要修改的邮箱"
密码:$ git config --global --replace-all user.password "要修改的密码"
查看修改状态:$git status
拉取远程仓库代码:$git pull
克隆远程某分支上的代码:$git clone -b 分支名称 http://xxx.git
合并分支到主分支:$git merge 分支名称
创建新分支:$git branch 新分支名
删除分支:$git branch -D 分支名
查看分支:$git branch
分支切换:$git checkout 分支名称
查看记录:$git log
查看地址:$git remote -v
强制合并代码(用于当前版本和历史提交版本不一致的情况):$git pull origin 分支名--allow-unrelated-histories
本地代码覆盖远程分支代码:$git push -f --set-upstream origin 分支名
12-03 13:11