华为云用户手册

  • 在控制台中管理分支 在控制台的分支列表中可以进行如下操作。 分支筛选 我的分支:显示我创建的所有分支,按最近提交时间排序,最新提交的分支将更靠前。 活跃分支:显示过去三个月内存在开发活动的分支,按最近提交时间排序,最新提交的分支将更靠前。 过时分支:显示过去三个月内没有任何活动的分支,按最近提交时间排序,最新提交的分支将更靠前。 所有分支:显示所有分支,“默认分支”将显示在最前面,其余分支按最近提交时间排序,最新提交的分支将更靠前。 单击某个“分支名称”,可跳转到该分支的文件列表,可查看该分支的内容、历史等信息。 单击某个分支的提交ID,可跳转到该分支的最新一次提交记录详情中,可查看本次提交的内容。 单击分支名称前面的勾选框,单击“批量删除”,可批量删除分支。 单击某个,可对该分支进行工作项关联操作。 单击某个,可定位到“对比”子页签,可以对将此分支与其它分支进行差异对比。 单击某个,可下载该分支的压缩包到本地。 单击某个,可以跳转到“合并请求”页签,可对该分支创建分支合并请求。 单击某个,可跳转到仓库设置中设置该分支为保护分支。 单击某个,可以按提示操作,将该分支进行删除。 只有开启IP白名单的机器才可以从界面下载源码压缩包。 如果您误删了分支,可提交工单联系技术支持处理。 另外在控制台中您还可以对分支进行相关的设置: 合并请求设置 默认分支管理 分支保护设置
  • IP白名单格式 IP白名单支持IPv4和IPv6,有3种格式,如下表所示。 表1 IP白名单格式 格式 说明 单个IP 这是最简单的一种IP白名单格式,如将您的个人家庭电脑的IP添加到白名单中,比如:100.*.*.123。 IP范围 当您拥有不止一台服务器而且IP段是连续的,或者您的IP会在一个网段内动态变化,这时您可以添加一个IP白名单范围,比如:100.*.*.0 - 100.*.*.255。 CIDR格式(无类别域间路由) 当您的服务器在一个局域网内并使用CIDR路由时,您可以指定局域网的32位出口IP以及一个指定网络前缀的位数。 从同一个IP发起的请求,只要网络前缀同您设定的前缀部分相同,即可视为来自同一授信范围从而被接受。
  • 迁移方法二:HTTP在线导入 首先确保你的SVN服务器支持HTTP或HTTPS方式访问,可以在任一浏览器,输入“http(s)://SVN服务器地址/访问仓库名称”进行验证。 在代码托管仓库列表页,单击“普通新建”旁的,在下拉列表中选择“导入外部仓库”。 源仓库路径填入要导入的SVN仓库地址,输入相应SVN用户名、密码,勾选“我已阅读并同意《隐私政策声明》和《软件开发服务使用声明》”,单击“下一步”。 输入要新建的代码仓库名称,进行相应权限配置,单击“确定”,等待仓库创建。 代码仓库创建成功后,单击仓库名称查看仓库详情。
  • Fork仓库与导入外部仓库的区别 Fork仓库与导入外部仓库的本质都是仓库的复制,其主要区别在于操作后源仓库与复制出仓库的联动关系不同,详细如下: Fork仓库 Fork仅应用于代码托管平台内的仓库间复制。 Fork仓库时,会基于源仓库的当前版本复制出一个内容相同的副本仓库,您在副本仓库的修改,可以申请合并(可以理解为一种跨仓库的分支合并)回源仓库,但副本仓库不能再获取源仓库的更新。 导入外部仓库 导入外部仓库不仅可以将其它版本管理平台的仓库进行导入(主要针对基于Git、SVN存储的托管平台),也可以导入代码托管服务自己的仓库。 导入外部仓库时,也会基于源仓库的当前版本复制出一个内容相同的副本仓库,所不同的是,副本仓库不能向源仓库提交合并申请,但是副本仓库可以随时拉取源仓库的默认分支,以起到获取最新版本的作用。
  • 如何将Fork仓库中的修改合入源仓库 进入代码托管服务仓库列表页。 单击Fork仓库名称,进入Fork仓库。 单击“合并请求”,切换到合并请求页签。 单击“新建”,弹出“新建合并请求”页面。 “源分支”为本仓库作为请求合并的分支。 “目标分支”为该仓库的源仓库被合入的分支。 单击“下一步”,进入到新建合并请求页面,其后面的操作流程与仓库内部的新建合并请求完全一致,请参考新建合并请求。 跨仓库的合并请求隶属于源仓库,只能在源仓库的“合并请求”页签中看到,在Fork仓库(请求发起方仓库)中看不到,因此选择的检视人、评审人、审核人及合并人均为源仓库的人员。
  • 从浏览器下载代码包 除了克隆以外,代码托管服务同时支持将仓库代码打包下载到本地。 使用直接下载方式获取的代码仓库文件与代码托管仓库没有关联关系,不能将内容回推代码托管仓库。 其操作步骤如下: 进入代码托管服务仓库列表页。 进入您的仓库。(如何新建仓库?) 单击“克隆/下载”按钮,在弹出的窗口中单击需要的代码包类型即可直接在浏览器中下载。 若仓库设置IP白名单,则只有IP白名单内的机器才可以在界面下载仓库源码,若仓库没有设置IP白名单,则均可在界面下载仓库源码。 目前支持的下载包格式有:zip、tar.gz、tar.bz2、tar。 下载的代码包是对应的代码托管仓库的master分支内容。 父主题: 克隆/下载代码托管仓库到本地
  • 操作步骤 在代码托管服务中,创建一个空仓库。 不选择“选择gitignore”。 不勾选“允许生成README文件”。 在本地,准备好将要上传的源代码。 如果原来是来自SVN服务器的,建议参考将SVN代码库迁移到Git代码库。 如果原来没有纳入过任何的版本系统,则在源代码的根目录,执行以下git命令(以Git Bash为例): 初始化Git仓库: git init 将文件加入版本库: git add * 创建初始提交: git commit -m "init commit" 设置本地仓库的远程服务器地址: 如果原来从其它地方clone的git仓库,则添加一个新的remote,命令行参考如下: git remote add new git@***.***.com:testtransfer/Repo1.git #(new 后面为仓库地址) 仓库地址在仓库详情页,获取方式如下图: 如果是一个刚刚初始化的仓库,则添加一个名为origin的remote,命令行参考如下: git remote add origin git@***.***.com:testtransfer/Repo1.git #(origin 后面为仓库地址) 推送全部代码到代码托管仓库: git push new master #(对应步骤3的第一种情况) git push origin master #(对应步骤3的第二种情况) 以上操作需要一定的Git基础知识,如遇到问题可以在Git官网学习或者申请技术支持。
  • 对合并请求进行检视、审核与合入 当检视人、审核人、合并人收到系统的分支合并请求通知邮件时,请按以下步骤进行操作。 进入目标仓库详情页。 切换到“合并请求”页签,单击目标合并请求名称,查看详情。 对目标合并请求进行检视。 检视人与审核人均可对合并请求进行检视并给予检视意见,若无修改意见,检视人可单击“检视通过”完成检视。 对目标合并请求进行审核。 审核人可通过单击“拒绝”或“通过”对合并请求进行审核。 通过合并请求门禁。 表2 合入条件说明 合入条件 说明 代码合并冲突 当源分支代码与目标分支代码产生合并冲突时,需要先解决冲突才可进行下一步操作,解决代码冲突可参考解决合并请求的代码冲突。 评审意见门禁 当发起人解决所有检视人或审核人的评审意见后,门禁显示通过,更多门禁详情请参考评审意见门禁详解。 流水线门禁 当最新commit或者预合并commit拉起并成功执行流水线时,门禁显示通过,更多门禁详情请参考流水线门禁详解。 E2E单号未关联 当合并请求关联工作项后,门禁显示通过,更多门禁详情请参考E2E单号关联门禁详解。 星级评价未通过 当指定人员进行星级评价后,门禁显示通过,更多门禁详情请参考星级评价门禁详解。 检视门禁 当已检视的检视人数达到最小检视人数时,门禁显示通过,更多门禁详情请参考检视门禁详解。 审核门禁 当已审核的审核人数达到最小审核人数时,门禁显示通过,更多门禁详情请参考审核门禁详解。 对目标合并请求进行合入。 当发起人通过以上合入条件后,合并人可单击“合入”按钮进行合入,反之,合并人可单击“关闭”将请求关闭。
  • 新建合并请求 假设管理员已经设置好了分支合并规则,当您在开发分支上完成了功能开发,并需要发起合并请求时,请按照以下流程操作。 进入目标仓库详情页。 切换到“合并请求”页签。 单击“新建”按钮,选择要合并的分支。 如上图在本示例中将刚完成开发任务的Dev分支合并到master分支中。 支持源分支选择Fork仓库的分支。 单击“下一步”按钮,此时系统会检测两条分支是否有差异。 如果分支没有差异,系统会做出提示,且不能新建合并请求。 如果分支存在差异,则进入如下“新建合并请求”页面。 在“新建合并请求”页面的下方可以看到两条分支的文件差异对比详情、要合并分支的提交记录。 根据下表参数说明,填写页面信息。 表1 参数说明 参数 说明 更改分支 单击可返回上一步更改需要合并的分支。 模板 若仓库管理员或所有者已为该仓库创建合并请求模板,您可以直接选择使用模板。 说明: 该功能仅支持“专业版套餐”及“铂金版套餐”用户。 标题 输入合并请求的标题。 描述 会结合分支合并情况与要合并分支的提交(commit)备注生成默认值,您可以根据项目情况进行修改。 关联工作项 可选择将合并动作关联到某个工作项,以起到自动改变工作项状态的作用。 合并人 在合并请求满足合入要求时,一般是所有审核人审核通过、所有问题都被解决(可设置不解决也能合并),合并人有权限执行合并操作(单击按钮)、也有权限关闭合并请求。 检视人 被指定参与合并分支检视,可以提出问题给发起人。 评审人 被指定参与合并分支评审,可以给出审核意见(审核通过、拒绝),也可以提出问题给发起人。 合并后删除源分支 可选择是否合并后删除源分支,初始会带入合并请求设置中预设状态。 Squash合并 开启Squash合并,可使基本分支的历史记录保持干净,并带有有意义的提交消息,而且在必要时可以更简单地恢复,详情请参考Squash合并。 单击“新建合并请求”按钮,可以完成合并请求的提交,页面会跳转到该“合并请求详情页”。 在合并请求详情中,可以看到合入条件达成的状态、合并人、检视人、审核人、所关联的工作项等信息,同时可以查看可留下评审意见,可标注评审意见为待解决状态,并可看到该合并涉及的所有动态。 “提交记录”:可以看到源分支的相关提交记录。 “文件变更”:可以看到此次合并的变更内容,并可具体筛选出新增、修改、删除、重命名等变更种类。 “流水线”:可以看到门禁流水线的信息。 当发起分支合并请求时,其相关人员(审核人、合并人)会收到提醒邮件。审核人不能为合并请求创建者。 单个文件差异超过5000行、差异文件个数超过100个时,建议使用客户端合并后,推送到代码托管。
  • 合并请求列表 在仓库详情的“合并请求”页签中,可以看到“合并请求列表”页面。 可以切换、查看不同状态的合并请求。 通过单击请求标题可以进入合并请求详情页。 可以查看请求的简要信息,包括:涉及的分支、创建时间、创建人。 提供了多条件维度的查找功能。 在左上方有新建合并请求入口。 开启中:代表该请求已进入检视或合并阶段,分支未合并。 已合并:代表该请求已经完成审核,并完成分支合并的动作。 已关闭:代表该请求被取消,分支未产生实际合并。 所有:显示所有状态的合并请求。
  • 自动提取单号规则 自动提取单号规则(根据代码提交信息自动提取单号),配置规则具体如下: 单号前缀:非必填项,支持多个前缀,最多10个,如“【问题单号or需求单号】”。 若单号前缀、分隔符、单号后缀规则不为空,则默认开启自动单号提取功能 分隔符:非必填项,默认为“;”。 单号后缀:非必填项,默认为换行符。 前缀、分隔符、后缀不能相同。 分隔符为空时,前缀和后缀不能为“;;”。 后缀为空时,前缀和分隔符不能为\n。 前缀、分隔符、后缀为全字符匹配,不支持正则表达式。
  • 操作步骤 一般情况下,开发者不会直接在master分支中进行开发,而是基于master或者dev分支创建一条feature分支,在feature中进行开发,然后将其推送到代码托管仓库,最后在代码托管仓库中将其合并到master或dev分支中,下面将模拟以上操作。 进入本地仓库目录,打开Git客户端,本案例以Git Bash为例,其它使用Git进行管理的工具的原理和命令使用基本是一致的。 基于master分支新建一条分支feature1001,并切换到其中,在master分支中执行以下命令。 git checkout -b feature1001 #如下图① 这个命令相当于先新建分支,然后直接切换到此分支。 执行成功如下图中②所示,此时可用ls命令查看其中包含的文件(如下图中③),此时他与master分支中内容是一样的。 在feature分支中进行修改(代码开发)。 Git支持Linux命令,本案例用touch命令新建一个newFeature1001.html文件,代表开发者已经在本地完成了新特性的开发,其对本地代码库的影响是新增了文件。 touch newFeature1001.html 创建后再次使用ls命令可以看到多出了这个文件。 使用add、commit命令依次将文件从工作区加入暂存区,再提交到本地版本库。(这是什么原理?) 期间可以穿插使用status命令,观察文件状态。 使用status命令看到,目前工作区有一个文件未纳入版本管理,如图中①。 使用add命令将文件加入暂存区,如图中②。 git add . #使用“.”代表所有文件,包括隐藏的,也可以直接指定某个文件 使用status命令看到,文件已经加入到暂存区,正在等待提交,如图中③。 使用commit命令将文件提交到本地版本库,如图中④。 git commit -m “您的提交备注” 再次查看状态,没有可处置文件,说明提交成功了,如图中⑤。 将本地的分支推送到代码托管仓库。 git push --set-upstream origin feature1001 本命令会在代码托管仓库新建一条与您本地feature1001一样的分支,并将其进行关联、同步。 其中origin是您的代码托管仓库名称,一般直接可控的仓库默认别名为origin,您也可以直接用仓库地址代替。 如果推送失败请检查连通性: 确保您的网络可以访问代码托管服务。 请在git客户端使用如下测试命令验证网络连通性。 1 ssh -vT git@********.com 如果返回内容含有“connect to host ********.com port 22: Connection timed out”,则您的网络被限制,无法访问代码托管服务,请求助您本地所属网络管理员。 请检查建立的SSH密钥配对关系,必要时重新生成密钥并到代码托管控制台进行配置,请参考SSH密钥或确认HTTPS密码正确配置。 检查IP白名单。注意,在未配置白名单时,全部IP均会放行,如果配置了则只允许名单内的IP访问。 查看代码托管仓库分支。 登录代码托管服务,进入您的仓库,在文件列中可以看到此时已经可以在代码托管仓库切换到您的分支。 如果没有看到您刚推送上来的分支,很可能是您的origin绑定到了另外的仓库,请使用仓库地址再次推送。 此时您可以使用代码托管服务提供的合并请求管理功能,发起分支合并,并通知审核人进行评审,最终将新特性合入到master或dev分支中。
  • 在代码托管控制台提交代码并关联工作项 进入仓库详情页。 新建一个文件,如下图所示,在填写“提交信息”时以fix #708206209开头,其他信息任意即可。 708206209是task02的编号。 单击“确定”按钮,此时系统相当于在代码托管仓库上执行了以下操作: 新建文件写入内容 git add . git commit -m "fix #708206209 Task02" 也就是将一个新建的文件进行了一次commit,并通过-m参数中的“fix”关键字关联到了task02工作项。 验证。 此时您再去查看task02工作项时,如下图所示: 其状态已经置于“已解决”。 增加了一条关联得代码提交记录,单击提交编号可以前往查看提交详情。 增加了一条自动生成的评论以说明本次工作项关联。
  • 在本地提交代码并关联工作项 首先您需要在本地具备Git环境,详细请参考Git客户端安装与配置,在可以访问仓库时(已经关联到了对应的远程仓库),可以开始进行以下操作。 在本地的master分支上新建一个文件,将其推送到远程仓库,在推送时-m里使用“fix”关键字去关联工作项task01。 本示例直接修改master分支,是为了缩短流程减少杂音让开发者更快的了解本地提交关联工作项的操作和原理。 在实际代码开发中,尽量不要直接修改master分支,推荐新建一个分支进行文件操作,操作完后再合并到master分支并将master推送到远程仓库。(这是一种默认规则和良好习惯) 在本地仓库文件夹下单击鼠标右键,打开Git Bash客户端。 确认远程仓库地址绑定是否成功。 git remote -v #该命令可以查看目前本地仓库所绑定的远程仓库地址。 如下图返回内容中,红线部分是本地仓所关联的远程仓库地址,地址之前是远程仓库在本地的别名。 如果发现绑定的仓库并非需要关联的仓库,或者没有绑定仓库,推荐直接将想绑定的仓库Clone到本地。 Clone成功以后再次执行“git remote -v”查看确认绑定正确即可。 (上步骤已Clone的仓库可跨过此步)用status命令查看下目前仓库的状态,切换到master分支。 git status #查看当前仓库状态,可以看到目前处于哪个分支、该分支有没有未暂存、未提交、未推送的修改 git checkout master #切换到master分支,如果当前没有处于master分支时使用 在本地仓库文件夹下新建一个文件,本示例中将其命名为“fileFor708206208”。 在Git Bash中将新建的文件添加到暂存区。 git add fileFor708206208 在Git Bash中将本次操作提交。 git commit -m "fix #708206208 Task01" #/本次提交用fix关键字关联了编号为708206208的task01 708206208是task01的编号。 在Git Bash将提交的内容推送到关联的代码托管仓库。 git push 如下图为推送成功,不同仓库结构返回会略有不同,只要看到所有步骤都100%、done就是推送成功了,如果推送失败一般是您的密钥问题。 验证关联结果。 上述操作完成后,进入工作项列表,找到编号为708206208的工作项,进入查看详情,如下图所示: 其状态已经置于“已解决”。 增加了一条关联得代码提交记录,单击提交编号可以前往查看提交详情。 增加了一条自动生成得评论以说明本次工作项关联。
  • IAM用户、项目成员与仓库成员的关系 仓库成员来源于其所属项目的项目成员,项目成员主要来源于租户的IAM用户,除项目创建者所在租户外,还可以邀请其它租户下的IAM账号加入项目。如下图为IAM用户、项目成员、仓库成员的包含关系示意图。 表1 项目角色与仓库角色对应关系 项目中的角色 仓库中的角色 项目经理 管理员 开发人员 开发者 测试经理 浏览者 测试人员 参与者 浏览者 运维经理 自定义角色 可由项目创建者设置为Commiter、开发者或浏览者 项目产生的费用将计算在项目经理所属的租户下。 父主题: 管理仓库成员
  • 安装Git LFS 不同操作系统的安装方法如下表所示。 表1 Git LFS安装方法 操作系统 安装方法 Windows 安装不低于Git 1.8.5版的Git客户端,然后在命令行中执行: git lfs install Linux 根据自己的操作系统和cpu架构在PackageCloud网站下载对应的安装包。 先解压安装包,再执行install.sh脚本进行安装,然后执行如下命令检查是否安装成功: git lfs version macOS 首先安装Homebrew软件包管理工具,然后在命令行中执行: $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" $ brew install git-lfs $ git lfs install
  • 配置追踪文件 配置追踪文件方法如下所示。 表2 追踪文件配置方法 场景 方法 追踪所有后缀名为“.psd”的文件 追踪所有后缀名为“.psd”的文件: git lfs track "*.psd" 追踪单个文件 追踪单个文件: git lfs track "logo.png" 查看已追踪的文件 查看已追踪的文件,可以通过git lfs track,或通过查看“.gitattributes”文件,获取详情: $ git lfs track Listing tracked patterns *.png (.gitattributes) *.pptx (.gitattributes) $ cat .gitattributes *.png filter=lfs diff=lfs merge=lfs -text *.pptx filter=lfs diff=lfs merge=lfs -text
  • 背景信息 代码托管支持Git LFS(Large File Storage,大文件存储)协议,可以把音乐、图片、视频等指定的任意大文件资源存储在Git仓库之外,对于使用者而言,类似在操作一个完整的Git仓库,非常方便。通过将大文件存储在Git原有的数据结构之中,可以减小Git仓库本身的体积,使克隆Git仓库的速度加快,也使得Git不会因为仓库中充满大文件而损失性能。 当您要上传的文件单个超过200MB时,需要使用Git LFS。 使用操作包含以下内容: 安装Git LFS 配置追踪文件 提交大文件 克隆包含Git LFS文件的远程仓库 更多操作
  • 请求示例 https://{endpoint}/v5/d80a8a6530324b7bac972cbb8a9f28ec/pipelines/e2bcbd561fbc4fd89577fb27c80b09a6/pipeline-runs/9e91b1fd7ce743b7a1b7a2458bcf76c7/jobs/6ce8600f396c4d5ba5290201ba9fd762/steps/7a1a7bb1b5e74d1c944d8b8971621033/logs { "start_offset" : 0, "end_offset" : 0, "limit" : 500, "sort" : "asc" }
  • 响应示例 状态码: 200 查询日志响应体 { "has_more" : false, "end_offset" : "25705", "start_offset" : "6132", "log" : "[2023/11/24 21:49:32.198 GMT+08:00] [INFO] [real_stage:执行Shell] : 该步骤开始执行。\n[2023/11/24 21:49:32.201 GMT+08:00] [INFO] [real_stage:执行Shell] : ================== start to do VmExecutionStep ==================\n[2023/11/24 21:49:32.207 GMT+08:00] [INFO] [real_stage:执行Shell] : [frame] start to send status data to service.\n[2023/11/24 21:49:32.225 GMT+08:00] [INFO] [real_stage:执行Shell] : [frame] finish to save status data to service.\n[2023/11/24 21:49:32.777 GMT+08:00] [INFO] [real_stage:执行Shell] : slave arch: amd64\n[2023/11/24 21:49:33.330 GMT+08:00] [INFO] [real_stage:执行Shell] : download file result: SUCCESS\n[2023/11/24 21:49:36.547 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== flow agent launched in [octopus_container] ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== use env job loader ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] start to do status callback\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] successfully callback to flow service\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] step begin: [1/1]-[执行Shell]\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] start to use official executor [official_shell_plugin]\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] ###############################@@@ 【step start】 @@@###############################\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== start to use script executor ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== start to execute shell pre function [make temp dir] ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== shell pre function [make temp dir] current temp dir:[/data/workspace/6ce8600f396c4d5ba5290201ba9fd762/7a1a7bb1b5e74d1c944d8b8971621033] ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== end to execute shell pre function [make temp dir] successfully ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== start to execute custom shell ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] 1\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== finish to use script executor with status success ===========\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] ################################@@@ 【step end】 @@@################################\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] finish to use official executor\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] step 执行Shell succeed. \n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] start to do data callback with context:[{1eaa92ecea2a42cab78e5269963a48c1 6ce8600f396c4d5ba5290201ba9fd762 7a1a7bb1b5e74d1c944d8b8971621033 0}]\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] successfully callback to flow service\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] current step, duration time: [0.030766842]\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] start to do status callback\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] successfully callback to flow service\n[2023/11/24 21:49:36.548 GMT+08:00] [2023-11-24 21:49:36] [INFO] =========== flow agent end ===========\n[2023/11/24 21:49:36.563 GMT+08:00] [INFO] [real_stage:执行Shell] : [frame] start to send status data to service.\n[2023/11/24 21:49:36.563 GMT+08:00] [INFO] [real_stage:执行Shell] : 该步骤执行完成。", "location" : "jenkins", "step_run_id" : "7a1a7bb1b5e74d1c944d8b8971621033" }
  • URI POST /v5/{project_id}/api/pipelines/{pipeline_id}/pipeline-runs/{pipeline_run_id}/jobs/{job_run_id}/steps/{step_run_id}/logs 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID pipeline_id 是 String 流水线ID pipeline_run_id 是 String 流水线运行实例ID job_run_id 是 String 流水线任务ID step_run_id 是 String 流水线步骤ID
  • 购买资源扩展续费 当您的代码仓存储用量已达上限,代码托管服务首页会提示您进行存储容量扩容。单击“扩容”,即可跳转到“购买CodeArts资源扩展”页面,您可根据表1填写购买信息。 当您的代码托管存储容量到达上限,您需购买资源扩展续费。 表1 资源扩展说明 类型 说明 计费模式 默认为“包年/包月”,不可选。 区域 选择代码仓库所在区域。如“北京一”。 产品 选择“存储扩展”。 存储容量 购买10GB起购,步长10GB,最大1000GB。 购买时长 您可选择1-9个月、1年、2年、3年。购买周期越长,折扣越大。 自动续费 根据自己的需求选择是否勾选自动续费。
  • 续费相关功能 CodeArts Repo包年/包月套餐续费相关功能如表1所示。 表1 续费相关功能 功能 说明 手动续费 CodeArts Repo包年/包月套餐从购买到被自动删除之前,您可以随时在CodeArts Repo控制台为代码托管服务续费,以延长代码托管服务的使用时间。 自动续费 开通自动续费后,代码托管服务会在每次到期前自动续费,避免因忘记手动续费而导致资源被自动删除。 在使用CodeArts Repo包年/包月套餐生命周期的不同阶段,您可以根据需要选择一种方式进行续费,具体如图1所示。 图1 代码托管服务生命周期 代码托管服务从购买到到期前,处于正常运行阶段,资源状态为“运行中”。 到期后,资源状态变为“已过期”。 到期未续费时,代码托管服务首先会进入宽限期,宽限期到期后仍未续费,资源状态变为“已冻结”。 当您处于欠费冻结(保留期内)、公安冻结、人员超限冻结、违规冻结和未实名认证冻结时,仓库部分功能将会冻结。详情请参考仓库冻结功能约束。 超过宽限期仍未续费将进入保留期,如果保留期内仍未续费,资源或数据将被自动删除。 华为云根据客户等级定义了不同客户的宽限期和保留期时长。 在代码托管服务到期前均可开通自动续费,到期前7日凌晨3:00首次尝试自动续费,如果扣款失败,每天凌晨3:00尝试一次,直至代码托管服务到期或者续费成功。到期前7日自动续费扣款是系统默认配置,您也可以根据需要修改此扣款日。
  • 已开通旧版本代码托管服务,能否转换为新版本计费? 本章节仅供老用户参考。 已购买包周期套餐的用户,套餐到期后,您可以选择继续购买包年/包月套餐。 开通旧版按需计费的用户,仍延续旧版按需计费规则,您也可以选择购买包年/包月套餐。 未开通/购买套餐,但单独开通过代码托管(CodeArts Repo)服务的用户,仍延续旧版按需计费规则。 旧版套餐计费方式详情请参考历史计费方式说明。 开通/购买套餐需要您拥有租户帐号,或拥有Tenant Administrator权限的IAM用户帐号,配置权限策略方法请参考创建用户组并授权。 旧版计费模式到新版的升级方案将在近期推出,请关注官方通告。 父主题: 计费FAQ
  • 计费示例 假设您在2023/03/08 15:50:04购买了代码托管服务基础版套餐。购买时长为一个月,并在到期前手动续费1个月,则: 第一个计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59。 第二个计费周期为:2023/04/08 23:59:59 ~ 2023/05/08 23:59:59。 您需要为每个计费周期预先付费,资源扩展计费公式为单价*用户数*购买时长。 代码托管服务基础版单价为15元/人/月,则上述两个计费周期1个人的总费用为15*1*2=30(元)。
  • 计费模式概述 代码托管服务采用包年/包月套餐计费模式,提供CodeArts Repo套餐和资源扩展,以满足不同场景下用户需求。 包年/包月套餐:一种预付费模式,即先付费再使用,按照订单的购买周期进行结算。购买周期越长,享受的折扣越大。当您购买的CodeArts Repo套餐的存储容量不足时,可在资源扩展中购买更多的存储容量。 资源扩展:提供存储容量扩展包。购买资源扩展前,须购买CodeArts Repo基础版及以上规格套餐。当您购买的CodeArts Repo套餐的存储容量不足时,可在资源扩展中购买更多的存储容量。 父主题: 计费模式
  • 代码托管存储容量扩展 表1 代码托管存储容量扩展 计费方式 包年/包月 适用场景 当您购买的CodeArts套餐资源存储容量不满足实际使用需求时,可购买存储容量扩展。 计费项 存储容量。 购买限制 购买代码托管存储扩展前,须完成代码托管服务基础版及以上规格套餐的购买或已购买CodeArts整体套餐。 代码托管存储容量购买10GB起购,步长10GB,最大1000GB。 计费公式 单价*存储容量*使用时长。 计费周期 根据购买时长确定(以GMT+08:00时间为准)。一个计费周期的起点是您开通或续费代码托管存储容量扩展的时间(精确到秒),终点则是到期日的23:59:59。 例如,您在2023/03/08 15:50:04购买时长为一个月的代码托管存储容量扩展,则其计费周期为:2023/03/08 15:50:04 ~ 2023/04/08 23:59:59。 变更配置 代码托管存储容量扩展支持变更存储容量,可增加或减少存储容量。变更时系统将按照如下规则为您计算变更费用。 资源升配:变更后的存储容量高于变更前,此时您需要支付新老配置的差价。 资源降配:变更后的存储容量低于变更前,此时华为云会将新老配置的差价退给您。 到期后影响 代码托管存储容量扩展到期未续费时,已购代码托管存储容量扩展将失效。
  • 原因分析 提示信息报错:message of commit,后面跟着一串由数字和小写字母组成的长达40位的字符串。这个字符串代表着这次提交的message填写有误。 即填写错误提交commit ID:1fbd34f77d1ddb73b73b84b878fd9edbece711f5。不符合提交规则:^\[maven-release-plugin\]|【问题单号or需求单号】\s*.+\W【修改描述】\s*.+\W【修改原因】\s*.+\W【模块】\s*.+\W【修改人】\s*.+\W【审核人】\s*.+
  • 解决方案 若修改最新一次书写错误的提交记录信息,您可执行如下操作: 在本地代码工作空间的根目录,即有.git隐藏文件夹的这一层级,右键选择git bash here打开git bash界面。 执行如下命令查找最新一次提交记录信息。 git log 执行如下命令,进入vi文本编辑器界面。 git commit --amend 输入git commit --amend -m ',输入第一行信息,回车再输入第二行信息,依次类推,在最后一行末尾加上另一个单引号,回车即可修改成功。
  • 支持工具 目前推荐了两个Git工具:Git客户端和TortoiseGit GUI,请根据实际情况安装,并使用代码托管服务。 Git客户端:使用Git进行代码版本管理,Git客户端是必须安装的。 TortoiseGit GUI:TortoiseGit GUI是Windows操作系统环境下的一种图形化操作工具,方便不习惯使用命令行的用户更快捷的使用Git。类似Git GUI的工具还有很多,可以根据喜好选择安装其它工具。
共100000条