CANN社区GitCode工作流说明 GitCode 工作流说明【免费下载链接】community本项目是CANN开源社区的核心管理仓库包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息项目地址: https://gitcode.com/cann/community1. 准备工作在开始 GitCode 工作流之前请确保完成以下准备安装 Git确保您的计算机已安装 Git。如需学习 Git 使用方法可通过 Google、百度等搜索引擎查询相关教程。寻找项目在 CANN 代码托管平台上找到您感兴趣的项目。如尚未找到请参考 CANN 组织介绍。2. 准备本地代码2.1 Fork 个人分支打开目标项目首页点击右上角的Fork按钮按照指引创建属于个人的云端 Fork 分支2.2 克隆 Fork 分支到本地2.2.1 创建本地工作目录mkdir ${your_working_dir}2.2.2 配置 Git 用户信息注意如已配置过可跳过此步骤设置 GitCode 个人用户名git config --global user.name your_GitCode_Name配置 Git 邮箱注意建议与CLA签署邮箱保持一致git config --global user.email emailyour_GitCode_email2.2.3 注册 SSH 公钥说明完成此注册可避免每次操作都需要输入账户密码生成 SSH 公钥ssh-keygen -t rsa -C emailyour_GitCode_email cat ~/.ssh/id_rsa.pub在 GitCode 网站添加公钥登录 GitCode点击右上角个人头像进入个人设置在安全设置 → SSH 公钥中点击SSH 公钥添加刚才生成的公钥内容验证 SSH 连接ssh -T gitgitcode.com看到remote: Welcome to GitCode, $user_name提示表示配置成功。2.2.4 克隆远程仓库到本地切换至工作目录cd ${your_working_dir}克隆仓库在远程仓库首页点击Clone获取$remote_link执行克隆命令# 克隆远程仓库到本地 git clone gitgitcode.com:${user_name}/${repository_name}.git # 设置上游仓库被 Fork 的原始仓库 git remote add upstream gitgitcode.com:cann/${repository_name}.git2.3 创建本地分支更新并同步本地分支git fetch upstream git checkout master git rebase upstream/master创建个人开发分支git checkout -b myfeature其中myfeature为个人分支名称后续在此分支上进行代码编辑和修改。3. 本地构建和验证具体构建和验证方法请参考对应开源项目仓库中的相关文档。4. 保持分支与 Master 同步# 在 myfeature 分支上执行 git fetch upstream git rebase upstream/master重要建议不建议使用git pull代替fetch/rebase因为git pull会产生合并提交使提交历史变得混乱可通过配置改变默认行为git config branch.autoSetupRebase always5. 提交本地变更提交代码变更git add . git commit -m 提交说明如需在前次提交基础上继续修改可使用git commit --amend6. 推送变更到远程仓库准备代码审查时将分支推送到 GitCode 上的 Fork 分支git push -f origin myfeature7. 创建 Pull Request访问https://gitcode.com/${user}/${repository_name}页面进入Pull Requests标签页点击右上角新建 Pull Request在创建界面确认源分支和目标分支创建 PR注意PR 是对项目分支的一次合入操作请谨慎操作以确保代码质量。8. 查看门禁状态和代码审查意见8.1 查看门禁状态PR 提交后请在评论中输入 /compile 触发门禁检查。检查时间因仓库而异请关注检查状态并及时修复问题。8.2 查看代码审查意见门禁检查通过后PR 会被分配给一个或多个审查者进行代码审查。您可以在 PR 页面查看所有评论和评审意见。9. 附录常用操作9.1 回退提交如需回退某个提交请按以下步骤操作创建回退分支并同步git checkout -b myrevert git fetch upstream git rebase upstream/master执行回退操作回退合并提交# SHA 为要回退的合并提交哈希值 git revert -m 1 SHA回退单个提交# SHA 为要回退的单个提交哈希值 git revert SHA推送到远程回退分支git push ${your_remote_name} myrevert9.2 处理提交冲突如果 PR 显示冲突标记说明存在代码冲突需要解决切换到 master 分支并同步git checkout master git fetch upstream git rebase upstream/master切换回个人分支并变基git checkout yourbranch git rebase master解决冲突使用编辑器查看并解决所有冲突文件完成变基并推送git add . git rebase --continue git push -f origin yourbranch9.3 合并提交如果多次提交后希望整理提交历史可以使用压缩提交查看提交日志git log交互式变基git rebase -i HEAD~n # n 为要合并的提交数量在编辑界面中将需要压缩的提交前的pick改为squash或s保留至少一个pick编辑提交信息按ESC键后输入:wq保存根据需要编辑合并后的提交信息再次按ESC后输入:wq完成强制推送git push -f origin yourbranch完成后再 GitCode PR 页面即可看到提交已合并。【免费下载链接】community本项目是CANN开源社区的核心管理仓库包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息项目地址: https://gitcode.com/cann/community创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考