使用Git仓库进行项目代码同步与打包

1. 引言

最近在用友的开发者中心论坛发现好多小伙伴反馈使用 YonStudio 开发工具进行云端项目导入失败的问题,有感于此问题会影响开发小伙伴的开发效率,特编写此文帮助新手小伙伴去规避这类问题的发生。

一直以来,开发者依循惯性思维去依赖云端平台来进行项目代码的保存,其实这个做法是不推荐的。因为官方自从取消了SVN 仓库的代码服务后,已经明确不再负责开发者代码的存储了,现在 YonStuido 开发工具的云端项目导入功能,主要目的也是为了方便本地获取新建项目模板而存在的,它可以下载项目的最新代码,只是一个附属的功能延展而已。所以作为一名开发者,特别是在进行商用项目开发时,为了避免项目代码出现问题,还是强烈建议大家使用 Git 仓库去维护自己的代码。

因此,本文主要介绍一下,如何使用第三方平台的 Git仓库去维护 YonBuilder移动开发 的项目代码,及代码的云端打包更新整个流程。

2. 操作流程

目前有很多第三方的 Git 仓库平台,本文以Gitee——码云作为示例平台进行功能使用的展示,具体开发者可以根据自己的使用习惯去选择使用第三方 Git平台,整体操作和流程都大同小异。

PS: 不推荐使用 Github,因为在国内可能被墙导致平台服务端无法连接 Git 仓库。

登录Gitee——码云平台,创建账户这类基本操作这里就不做展示了,我们直接从创建仓库开始。

2.1 Git相关操作

2.1.1 创建Git仓库

在这里插入图片描述

填写仓库信息,点击按钮完成 Git 仓库的创建

在这里插入图片描述

2.1.2 复制Git仓库地址

点击仓库详情页面右侧上方橘黄色的「克隆/下载」按钮,复制 Git 仓库地址(下面的操作需要使用)

在这里插入图片描述

2.1.3 下拉Git代码到本地

对于 Git 操作不了解的同学,可以参见 Gitee 提供的使用手册 https://Gitee.com/help

打开本地终端,进入目标文件夹,按以下流程输入命令,完成 Git仓库的 Clone操作。

  • 输入上面粘贴的 Clone命令后,点击回车确认

Git Clone https://Gitee.com/xxx/Git-test.Git

  • 输入 Gitee 账户的用户账户邮箱后,点击回车确认
  • 输入 Gitee 账户的用户账户密码后,点击回车确认

在这里插入图片描述

操作确认:查看文件夹,如果多出来一个 git-test 文件夹,则 Git 仓库创建成功。

2.2 本地相关操作

2.2.1 将YonBuilder移动开发项目迁移至Git文件夹
  • 如果是已有项目,则将项目文件夹复制或移动到 Clone 生成的 Git 文件夹(本文是 git-test)内。

  • 如果是新的项目,使用 YonStudio 开发工具或云端工作台创建项目,并将项目检出到 Clone 生成的 Git 文件夹(本文是 git-test)内。(PS:对于相关操作不属性的新手同学,可先学习一下我之前发布的新手快速入门系列教程)

重要:强烈建议迁移后,将YonBuilder移动开发的项目文件夹名称修改为widget,方便后续平台拉取代码编译的时候,平台能有效识别项目文件。

2.2.2 创建.Gitignore忽略文件

Git 文件夹(本文是 git-test)内创建 .Gitignore 忽略文件,文件内容按项目需要和自己的平台类型添加通用的忽略文件类型,本文此处重点告诉大家添加需要忽略的 YonBuilder移动开发 的项目文件,具体就是在.Gitignore 内,添加以下内容:

# 忽略YonBuilder移动开发的隐藏缓存文件
.apicloud/
.yonstudio/
# 忽略VsCode的隐藏文件
.vscode
# MacOS系统的隐藏文件
.DS_Store
# 对于原APICloud创建的老项目,可能存在的svn隐藏文件
.svn

此时,Git 文件夹内的文件结构如下图所示:

在这里插入图片描述

2.2.3 使用YonStudio开发工具,打开widget文件夹进行项目开发

顶部菜单栏:项目 -> 导入项目 -> 本地导入,在对话框内打开 YonBuilder移动开发 项目文件夹(本文为 widget 文件夹)

在这里插入图片描述

在这里插入图片描述

因为 YonStudio 开发工具基于 VSCode 内核,所以我们可以切换到「源代码管理」面板,进行项目的 Git 操作。

在这里插入图片描述

让我们进行一次 Git 提交操作:

  • 1 全部选择项目文件,鼠标点击右侧的 + 图标,添加到暂存区;
  • 2 填写提交 commit 的日志信息;
  • 3 点击 对号 完成 一次 commit 的提交;

在这里插入图片描述

    1. 选择需要提交的 commit,点击右侧的向上箭头,将代码 Push到远程的 Git 仓库

在这里插入图片描述

PS: 上面的操作,也可以使用终端通过 Git 命令进行,具体详细的 Git 操作,不是本文的重点,有需要的同学,可以自行查询学习。

2.3 云端工作台配置Git平台

登录开发者中心的工作台,选择移动开发版块,选择应用项目,进入应用详情页。

切换到「上传代码」面板,类型选择「Git平台」,按输入框内容,填写相关的信息即可。

在这里插入图片描述

PS: 关于这里需要输入的用户名和密码,即可以输入真正的 Git 账户邮箱和账户密码,也可以出于安全角度的考虑,创建一个有限权限的 Token(即私人令牌),然后填写 Token 密码去替代账户密码。这样即使该密码泄漏,也仅仅是有限的权限,不会危及到整个账户安全。

具体 Token 令牌创建流程如下:

  • 1 登录Gitee平台,点击头像,下拉菜单选择「设置」,进入设置页面

  • 2 左侧菜单栏点击「私人令牌」,切换到私人令牌页面

  • 3 点击右上角的「生成新令牌」,进入私人令牌创建页面,按需求勾选令牌权限,点击提交即可。

在这里插入图片描述

  • 4 创建成功后,一定要记得保存好生成的密码。

在这里插入图片描述

  • 5 填写 Git 信息后的平台页面截图

在这里插入图片描述

2.4 验证

2.4.1 开发者在YonStudio里,对项目代码内容进行修改,然后提交的Git仓库

在这里插入图片描述

提交 commit 后,别忘了推送 commit 到远程仓库。

这里介绍除了菜单操作外,另一种使用终端命令行提交的方式。在 YonStudio 开发工具的右下区域,切换到终端面板,依次输入以下命令(输入后别忘了按回车确认)

  • 同步远程仓库代码
Git pull
  • 推送本地的 commit 到远程仓库
Git push

在这里插入图片描述

2.4.2 编译应用测试安装包

提交成功后,登录 YonBuilder移动开发 的云端工作台(使用 YonStudio 工具也可以编译,个人习惯使用云端控制台),应用详情页的移动打包面板对项目进行编译测试包(友情提示:新建项目用户,别忘了提前创建或上传证书)

2.4.3 手机安装编译后的测试应用安装包,查看修改内容是否生效。

在这里插入图片描述

3 注意事项

  1. 再次强调:YonBuilder移动开发 平台不负责代码维护工作,YonStudio的代码检出,主要用户创建新项目使用,开发者日常的代码维护,一定要使用 Git 仓库进行代码管理,也方便团队协作开发。
  2. 项目代码结构问题,一定要保证 widget 文件夹在 Git 仓库的顶端第一个位置,否则可能出现平台拉取后无法识别项目代码的问题
  3. YonStudio 开发工具云端检出方式检出的代码,永远是以「代码块」方式上传的代码,即使「代码上传」页面选择「Git平台」方式,也不会检出 Git 仓库的最新代码。

4 总结

使用 Git 进行代项目码维护,已经是当前编程开发人员所必备的一项基本技能了,所以建议刚接触编程开发的新手同学,尽快熟悉掌握 Git 相关的操作命令和使用流程,为今后的编程开发道路打好基础。

综上所述,在使用YonBuilder移动开发技术进行项目开发时,强烈建议开发者使用 Git 仓库自行进行项目代码的维护。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

不会搭建物联网数据平台的老板参考一下吧

搭建牛奶厂的物联网数据平台 对于现代牛奶厂,在数字化时代中,搭建物联网数据平台至关重要。这样的平台基础是建立IOT数据底座平台,它是支撑物联网应用的数据存储和管理基础设施,通常由分布式存储系统、时序数据库集群和存储管理组…

放弃 Rust 选择 Zig,Xata 团队推出 pgzx —— 计划使用 Zig 开发基于 PG 的分布式数据库

Summary Xata 公司在基于 PostgresSQL 开发自己的分布式数据库,出于 Zig 和 C 语言以及 PostgreSQL 的 API 有更好的互操作性的考虑,他们选择了 Zig 而非当红炸子鸡语言 Rust。他们的博客文章中对 pgzx 进行了介绍。让我们来看下他们对 Zig 和 Rust 语言…

学习网络编程No.15【高级IO之多路转接】

引言: 北京时间:2024/3/19/11:16,若是说记忆有克星的话,那么一定是时间。若是说耐心有克星的话,那么一定是人的心态。连续几天睡眠问题,加上环境影响,上篇博客还有部分知识只能放在该篇博客介绍…

面试总结:C++11新特性

对于C11的特性你了解多少?简单说说 - 在语法层面引入统一初始化(即列表初始化),那么C11的初始化就可以分为列表初始化和字面值初始化 列表初始化就是使用{}(花括号)来进行对象、内置基本类型等的初始化 in…

超全整理,软件测试-性能测试流程汇总,看这一篇就够了...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 性能测试&#xf…

这个插件,提供了1000多个在线底图服务!

本文推荐一下QGIS中的热门插件:QuickMapService。目前在QGIS插件市场下载量排名第一,先看下官网的介绍: Easy to use list of services and search for finding datasets and basemaps. 言简意赅,用来添加QGIS底图的插件。 插件安装 打开QGIS自带的插件管理器。 在搜索框中…

学习要不畏难

我突然发现,畏难心是阻碍我成长的最大敌人。事未难,心先难,心比事都难,是我最大的毛病。然而一念由心生,心不难时,则真难事也不再难。很多那些自认为很难的事,硬着头皮做下来的时候,…

黑马鸿蒙学习(3):滑动条

1) 滑动条slidebar属性:

MySQL-1.数据库的基本操作

1. 数据库的基本操作 show databases; information_schema:信息图式,存储服务器管理数据库的信息 mysql:存放系统信息,用户名密码等 performance_schema:性能图式 sys:系统文件 1.1 创建数据库-studen…

[STL]priority_queue类及反向迭代器的模拟实现

🪐🪐🪐欢迎来到程序员餐厅💫💫💫 今日主菜: priority_queue类及反向迭代器 主厨:邪王真眼 主厨的主页:Chef‘s blog 所属专栏:c大冒险 向着c&…

【Web应用技术基础】HTML(5)——案例1:展示简历信息

样式&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>展示简历信息…

【微服务】Gateway

文章目录 1.基本介绍官方文档&#xff1a;https://springdoc.cn/spring-cloud-gateway/#gateway-starter1.引出网关2.使用网关服务架构图3.Gateway网络拓扑图&#xff08;背下来&#xff09;4.Gateway特性5.Gateway核心组件1.基本介绍2.断言3.过滤 6.Gateway工作机制 2.搭建Gat…

从姿态估计到3D动画

在本文中&#xff0c;我们将尝试通过跟踪 2D 视频中的动作来渲染人物的 3D 动画。 在 3D 图形中制作人物动画需要大量的运动跟踪器来跟踪人物的动作&#xff0c;并且还需要时间手动制作每个肢体的动画。 我们的目标是提供一种节省时间的方法来完成同样的任务。 我们对这个问题…

超实用!10条JavaScript这20年来增加的新功能?

部门捞人&#xff1a;前端可投&#xff1a;OD软件工程师社会招聘-表单-金数据 在过去的20年里&#xff0c;JavaScript经历了多次更新和升级&#xff0c;引入了许多新功能以增强其表达力、交互性和开发效率。以下是一些显著的新功能&#xff1a; 1.ECMAScript 6 (ES6) &#xf…

【ssh连接】奇奇怪怪报错记录

gitlab配置ssh连接&#xff0c;先跟着教程生成密钥&#xff0c;上传公钥&#xff0c;将服务器信息存入config文件&#xff0c;但是ssh连接超时&#xff0c;很急&#xff0c;想用服务器&#xff0c;各种搜索尝试&#xff0c;搞了两三天别的什么都没干&#xff0c;还是没解决&…

vue脚手架创建项目:账号登录(利用element-ui快速开发)(取消eslint强制格式)(修改端口号)

新手看不懂&#xff0c;老手不用看系列 文章目录 一、准备工作1.1 取消强制格式检查1.2 导入依赖&#xff0c;注册依赖 二、去element-ui官网找样式写Login组件2.1 引用局部组件2.2 运行项目 三、看一下发现没问题&#xff0c;开始修改前端的代码四、修改端口号4.1 修改后端端口…

中国赛道领跑之争:安踏将耐克越甩越远

一双鞋、一件衣服每被穿一次&#xff0c;消费者就会把它背后的品牌和自身的体验联系起来&#xff0c;做出评判。所以&#xff0c;如果说有什么领域能充分展示国产品牌的发展进步&#xff0c;鞋服一定包含在内&#xff0c;尤其是强调专业性的体育运动市场。 一年前的2023年3月&…

CSS3语法及选择器总结

CSS定义 css是一种样式表语言&#xff0c;用来美化HTML文档 一.CSS的引用 方式一:内部样式表(HTML中引用) 在HTML的title标签下方添加style双标签&#xff0c;style标签里面书写CSS *style里面的注释为/ * … / CSS的书写规则: 选择器{属性名&#xff1a;属性值&#xff…

Vue+Element-UI el-table表格根据指定条件动态合并行span-method

当涉及到展示复杂数据的表格时&#xff0c;Element UI 中的 el-table 是一个非常有用的组件。在某些情况下&#xff0c;可能需要对表格进行合并显示以提高可读性。 案例需求&#xff1a;页面中有个表格组件&#xff0c;其中包含了一些学生的姓名、年级、负责班级和科目成绩等信…

20240319-2-机器学习基础面试题

⽼板给了你⼀个关于癌症检测的数据集&#xff0c;你构建了⼆分类器然后计算了准确率为 98%&#xff0c; 你是否对这个模型很满意&#xff1f;为什么&#xff1f;如果还不算理想&#xff0c;接下来该怎么做&#xff1f; 首先模型主要是找出患有癌症的患者&#xff0c;模型关注的…