Vivado版本控制

news2024/12/23 1:11:26

Vivado版本控制

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

  1. 搭建Git环境

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

在这里插入图片描述

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 分支名

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1277880.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++ string类—初始化、容量操作、迭代器

目录 前言 一、string类 二、初始化 1、无参或带参 2、用字符串变量初始化 3、用字符串初始化 4、指定数量字符 三、容量操作 1、size 2、push_back 3、append​编辑 4、运算符 5、reserve 6、resize 四、迭代器 五、OJ练习 反转字符 找出字符串中出现一次的…

什么是中间人攻击

中间人攻击 1. 定义2. 中间人攻击如何工作3. 常见中间人攻击类型4. 如何防止中间人攻击 1. 定义 中间人攻击&#xff08;Man-in-the-Middle Attack&#xff0c;简称MITM&#xff09;&#xff0c;是一种会话劫持攻击。攻击者作为中间人&#xff0c;劫持通信双方会话并操纵通信过…

无脑018——win11部署whisper,语音转文字

1.conda创建环境 conda create -n whisper python3.9 conda activate whisper安装pytorch pip install torch1.8.1cu101 torchvision0.9.1cu101 torchaudio0.8.1 -f https://download.pytorch.org/whl/torch_stable.html安装whisper pip install -U openai-whisper2.准备模型…

密码学概论之基本概念

本人信息安全专业&#xff0c;大三&#xff0c;为着将来考研做准备&#xff0c;打算按照自己目前的理解给大家唠唠密码学。 这个专栏我将从以下七个章节来聊聊密码学&#xff0c;若有不当之处&#xff0c;敬请指出。 • 密码学概论 • 流密码 • 分组密码 • 公钥密码 •…

【数值计算方法(黄明游)】矩阵特征值与特征向量的计算(五):Householder方法【理论到程序】

文章目录 一、Jacobi 旋转法二、Jacobi 过关法三、Householder 方法1. 旋转变换a. 旋转变换的选择b. 旋转变换的顺序 2. Householder矩阵&#xff08;Householder Matrix&#xff09;a. H矩阵的定义b. H变换的几何解释c. H变换的应用场景 3. H变换过程详解a. 过程介绍b. 细节解…

vcomp140.dll是什么意思?vcomp140.dll缺失怎么修复的五个方法

在电脑使用过程中&#xff0c;我们常常会遇到一些错误提示&#xff0c;其中之一就是“由于找不到vcomp140.dll无法继续执行代码”。这个错误提示通常出现在运行某些程序时&#xff0c;给使用者带来了很大的困扰。那么&#xff0c;为什么会出现这个错误呢&#xff1f;又该如何解…

函数指针和指针函数的讲解

文章目录 指针函数函数指针函数指针的定义与指针函数的声明的区别函数指针的定义指针函数的声明 typedef在函数指针方面的使用typedef和using 给函数指针的类型取别名typedef和using 给函数的类型取别名 指针函数 指针函数&#xff1a; 也叫指针型函数&#xff0c;本质上就是一…

线上CPU飙高问题排查!

https://v.douyin.com/iRTqH5ug/ linux top命令 top 命令是 Linux 下一个强大的实用程序&#xff0c;提供了系统资源使用情况的动态、实时概览。它显示了当前正在运行的进程信息&#xff0c;以及有关系统性能和资源利用情况的信息。 以下是 top 命令提供的关键信息的简要概述…

整体迁移SVN仓库到新的windows服务器

一、背景 公司原有的SVN服务器年代比较久远经常出现重启情况&#xff0c;需要把SVN仓库重新迁移到新的服务器上&#xff0c;在网上也搜到过拷贝Repositories文件直接在新服务器覆盖的迁移方案&#xff0c;但考虑到原有的操作系统和现有的操作系统版本不一致&#xff0c;SVN版本…

【开源】基于JAVA的超市账单管理系统

项目编号&#xff1a; S 032 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S032&#xff0c;文末获取源码。} 项目编号&#xff1a;S032&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块三、系统设计3.1 总体设计3.2 前端设计3…

【计算机网络】14、DHCP

文章目录 一、概述1.1 好处 二、概念2.1 分配 IP2.2 控制租赁时间2.3 DHCP 的其他网络功能2.4 IP地址范围和用户类别2.5 安全 三、DHCP 消息3.1 DHCP discover message3.2 DHCP offers a message 如果没有 DHCP&#xff0c;IT管理者必须手动选出可用的 ip&#xff0c;这太耗时了…

每天五分钟计算机视觉:AlexNet网络的结构特点

本文重点 在前面的一篇文章中&#xff0c;我们对AlexNet网络模型的参数进行了详细的介绍&#xff0c;本文对其网络模型的特点进行总结。 特点 1、AlexNet的网络结构比LeNet5更深&#xff0c;模型包括5个卷积层和3个全连接层。参数总量大概为249MB。 2、Alex使用了ReLu激活函…

【vSphere 8 自签名 VMCA 证书】企业 CA 签名证书替换 vSphere VMCA CA 证书Ⅱ—— 创建和添加证书模板

目录 3. 使用 Microsoft 证书颁发机构创建 VMCA 证书模板3.1 打开 Certificate Template Console3.2 复制模板修改 Compatibility 选项卡修改 General 选项卡修改 Extensions 选项卡确认新模板 4. 将新模板添加到证书模板4.1 打开 Certificate Console4.2 创建证书模板 关联博文…

高端大气简历模板(精选8篇)

想要让简历在众多求职者中脱颖而出&#xff0c;吸引HR的眼球吗&#xff0c;可以看看这8篇精选的高端大气简历模板&#xff01;本文为大家提供了多种行业、职位的简历案例&#xff0c;助大家打造一份令人惊艳的简历&#xff0c;轻松斩获心仪职位&#xff01; 高端大气简历模板下…

【FPGA图像处理实战】- 图像基础知识

视频图像处理是FPGA主要应用方向之一&#xff0c;很多FPGA从事或准备进入这一领域&#xff0c;我们现在开始发布新的FPGA实战专栏——FPGA图像处理。 FPGA处理视频图像处理的主要优势是流水线和并行处理运算&#xff0c;特别是现在视频分辨率越来越大&#xff0c;从720p到1080…

机械臂运动规划、抓取末端执行器、抓取开源项目

运动规划 1.1已有抓取点 假设抓取点已检测到。这些方法设计了从机器人手到目标物体抓取点的路径。这里运动表示是关键问题。虽然存在从机器人手到目标抓握点的无限数量的轨迹&#xff0c;但是由于机器人臂的限制&#xff0c;许多区域无法到达。因此&#xff0c;需要对轨迹进行…

代码浅析DLIO(四)---位姿更新

0. 简介 我们刚刚了解过DLIO的整个流程&#xff0c;我们发现相比于Point-LIO而言&#xff0c;这个方法更适合我们去学习理解&#xff0c;同时官方给出的结果来看DLIO的结果明显好于现在的主流方法&#xff0c;当然指的一提的是&#xff0c;这个DLIO是必须需要六轴IMU的&#x…

面试就是这么简单,offer拿到手软(一)—— 常见非技术问题回答思路

面试系列&#xff1a; 面试就是这么简单&#xff0c;offer拿到手软&#xff08;一&#xff09;—— 常见非技术问题回答思路 面试就是这么简单&#xff0c;offer拿到手软&#xff08;二&#xff09;—— 常见65道非技术面试问题 文章目录 一、前言二、常见面试问题回答思路问…

webGIS使用JS,高德API完成简单的智慧校园项目基础

代码实现 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-width, i…

react之@路径解析配置和联想配置

react之路径解析配置和联想配置 一、介绍二、路径解析配置三、联想路径配置 一、介绍 1.路径解析配置&#xff08;webpack&#xff09;&#xff0c;把 / 解析为 src/2.路径联想配置&#xff08;VsCode&#xff09;&#xff0c;VsCode 在输入 / 时&#xff0c;自动联想出来对应…