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

本文指导开发者如何避免YonStudio云端项目导入失败,建议采用Git仓库进行代码管理,包括创建Git仓库、迁移项目至Git、云端打包更新等步骤,并强调了使用Git的重要性。
摘要由CSDN通过智能技术生成

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 仓库自行进行项目代码的维护。

### 回答1: 当使用git submodule进行打包时,可能会遇到没有获取到最新代码的问题。这可能是由于以下几个原因导致的: 1. 提交子模块更改:在主项目中,子模块仅记录了特定版本的提交。如果在子模块所在的仓库中做出了新的提交,而主项目并没有更新子模块的版本,那么在打包时就不会获取到最新的代码。解决方法是在主项目中更新子模块的版本,即运行`git submodule update --remote`命令,或使用`git submodule foreach 'git pull origin master'`命令更新所有子模块。 2. 远程仓库更改:子模块所在的远程仓库也可能发生了更改,例如切换到了不同的分支。此时,打包时可能获取到的是旧的代码。解决方法是通过运行`git submodule sync`命令来同步远程仓库的更改,并再次运行`git submodule update --remote`命令来获取最新的代码。 3. 本地缓存问题:有时候,由于本地缓存的原因,子模块的代码没有及时更新。可以尝试删除子模块的缓存目录,然后重新初始化并更新子模块。 总之,要确保获取到子模块的最新代码,我们需要定期检查子模块的版本,并在打包前更新子模块的版本或者重新同步远程仓库的更改。同时,需要注意子模块所在的仓库是否存在权限问题,以及网络是否正常,这些也可能导致无法获取到最新的代码。 ### 回答2: 当使用Git Submodule时,打包时无法获取到最新的代码,可能是因为以下几个原因: 1. 检查Submodule的版本:请确保Submodule所使用的版本是最新的。可以使用`git submodule update --remote`命令来更新Submodule的代码。这个命令将会检查并拉取最新的Submodule代码到本地。 2. 确保Submodule被正确初始化:在拉取主仓库代码后,需要初始化并更新Submodule。可以使用以下两个命令完成初始化: ``` git submodule init git submodule update ``` 这两个命令将会初始化并拉取最新的Submodule代码。 3. 检查主仓库是否在最新的版本:如果主仓库本身是基于某个特定的Submodule版本进行开发的,那么在打包时将无法获取到最新的Submodule代码。需要确保主仓库已经更新到了最新版本,在主仓库根目录使用`git pull`命令来拉取最新的代码。 4. 检查Submodule的远程仓库:确认Submodule的远程仓库是否是最新的,可能出现了远程仓库代码已经更新而Submodule还未更新的情况。可以在Submodule根目录使用`git remote -v`命令来查看远程仓库的地址,并使用`git remote update`来更新远程仓库。 如果以上步骤都没有解决问题,可能是由于其他未知因素导致的。在这种情况下,可以尝试删除Submodule并重新初始化,并确保按照正确的步骤进行初始化和更新。同时,确保你的打包脚本或方法正确地使用了Submodule,并获取了最新的代码。 ### 回答3: Git Submodule 是 Git 提供的一个管理子模块的工具。它允许我们将一个 Git 仓库作为另一个仓库的子目录添加到当前仓库中。 当我们使用 Git Submodule 时,有时会遇到无法获取到最新的代码的问题。可能有以下几个原因: 1. Git Submodule 的版本不是最新的:在添加 Submodule 时,我们需要指定一个特定的提交或分支作为 Submodule 的版本。如果指定的版本不是最新的,那么打包时就无法获取到最新的代码。 解决方法:在 Submodule 所在的目录中使用 `git pull` 命令,拉取最新的代码。 2. Git Submodule 的远程仓库发生了变化:如果 Submodule 的远程仓库发生了改动,但我们没有更新 Submodule,那么打包时就无法获取到最新的代码。 解决方法:在 Submodule 所在的目录中使用 `git pull origin [branch]` 命令,拉取最新的代码,并确保 Submodule 指向的远程分支是最新的。 3. Git Submodule 的运行环境缓存了旧代码:如果使用的构建工具缓存了 Submodule 的代码,并没有重新拉取最新的代码,那么打包时就无法获取到最新的代码。 解决方法:清除构建工具的缓存,重新拉取 Submodule 的代码。 总之,要获取到最新的代码,我们需要确保 Submodule 的版本是最新的,并且 Submodule 所在的目录中的代码是最新的。如果出现无法获取最新代码的情况,我们可以通过更新 Submodule、拉取最新代码和清除缓存等方法来解决。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值