MindSpore码云代码提交以和注意事项
MindSpore码云代码提交步骤以及注意事项
0. 前言
-
准备工作
- 下载git
- 注册gitee账号
- 签署个人CLA:MindSpore-CLA地址
-
学习资源:
- MindSpore官方代码提交教程视频、MindSpore官方代码提交wiki
- git基础:猴子都能懂的GIT入门 、Learn Git Branching、Git - Book、开源指北
- gitee基础:gitee帮助文档
- github基础:开始使用 GitHub - GitHub Docs
1. 代码提交步骤
1.1 流程图
1.2 配置git
1.2.1 查看并设置用户名和邮箱
-
进入gitee个人主页
-
打开终端(cmd、powershell等)
-
#设置用户名 git config --global user.name XXX(你的用户名) #设置邮箱 git config --global user.email XXX(你的邮箱)
-
1.2.2 生成与添加SSH公钥
-
生成SSH公钥
-
#生成SSH公钥 ssh-keygen -t rsa -C "zjy_990315@163.com" #如果有询问,选项直接回车即可 #查看SSH密文 cat xxx(密文保存地址,一般在C盘)
-
-
添加SSH公钥
- 进入gitee个人主页找到“SSH公钥”,将上面的密文复制到公钥区域,并添加标题。
1.3 fork远程代码仓库到个人代码仓库
- 进入MindSpore/course代码仓库
- 点击fork
1.4 下载到本地仓库
- 进入自己的代码仓库,然后复制下载地址
- 选择自己要克隆的本地路径,然后使用
git clone xxx(刚才复制的内容)
1.5 本地修改并push到自己的代码仓库
1.5.1 进入刚才的本地仓库,修改代码
-
打开终端,进入本地仓库,使用
git status
查看状态-
在没有改动时,显示没有可以提交的内容,接下来开始修改代码
-
改动case_4_key_technology_in_AI.ipynb文件后再查看git状态
-
使用
git add case_4_key_technology_in_AI.ipynb
将改动保存到缓存区 -
使用
git commit
来提交代码并进行评论,评论规范请点击这里查看
1.5.2 push到gitee个人代码仓库
-
再次复制个人仓库的SSH地址
-
修改远程push方式
-
#查看当前方式 git remote -v #删除当前方式 git remote rm origin #添加SSH方式 git remote add origin git@gitee.com:jiayuzhang128/course.git
-
-
然后使用
git push
将代码推送到gitee个人仓库- 可以看到已经推送到个人仓库了,并且显示评论
1.6 网页提交PR,将代码并入主仓
- 进入gitee个人代码仓库,点击" Pull Request"
- 下面就是创建成功等待合并的PR:
2. FAQ-常见问题
2.1 如何将个人/本地仓库与远程仓库同步
2.1.1 需求描述
当前已经完成了远程主仓库fork到个人仓库以及本地下载,而远程主仓库已经发生改变,个人/本地仓库需要及时同步。
假设A是远程主仓库,B是个人仓库。
2.1.2 解决方法
- 关联两个仓库
执行命令git remote -v
查看远程仓库路径,如果只返回了两行结果,说明这时A、B两个仓库还未进行关联:
origin https://gitee.com/B/xxxx.git (fetch)
origin https://gitee.com/B/xxxx.git (push)
执行命令git remote add upstream https://gitee.com/A/xxxx.git
将A仓库设为B的上游代码库,upstream的名称可以随便取,写abc也可以,之后B就用upstream这个名字与A进行联系。再次查看远程仓库路径,检查是否设置成功
upstream https://gitee.com/A/xxxx.git (fetch)
upstream https://gitee.com/A/xxxx.git (push)
origin https://gitee.com/B/xxxx.git (fetch)
origin https://gitee.com/B/xxxx.git (push)
- 拉取合并代码
执行命令git fetch upstream
获取A上的更新(此时并不会修改本地代码)。然后执行git merge upstream/master
将代码合并到自己的master分支上。或者直接使用git pull upstream master
命令。
- push代码到fork的仓库
通过之前的操作,只是将自己的本地库和原来的远程库进行了同步,所以还需要将fork的仓库也进行同步才行。git push origin master
,将代码push到B仓库,到这里才算将代码全部同步。
2.2 Notebook文件CI门禁常见问题
2.2.1 MarkDown问题
Mathematical formulas should be surrounded by blank lines
Unordered list style
Trailing spaces
Multiple consecutive blank lines
Headers should be surrounded by blank lines
Lists should be surrounded by blank lines
2.2.2 代码问题
2.2.3 在创建的PR中重新测试CI门禁
- 在评论区输入
/retest
,点击评论即可。
2.3 多次提交记录,如何进行合并
2.3.1 需求描述
代码仓提交规范要求,提交记录仅保留一条,所以多次提交时会有stat/needs-squash
标签,需要进行合并多次提交。
2.3.2 解决方法
已经又多次提交记录时,采用rebase方法合并多次提交记录,步骤如下:
-
命令行输入
git rebase -i HEAD~2
。i的意思是:interactive
,HEAD~2
为合并历史的前两个提交,同理,HEAD~4
就是合并历史的前四个提交。 -
执行后回出现vim信息如下,然后第一行不变,将后面的
pick
改为s
或squash
。squash(挤压合并),作用是使用提交,将此提交与之前的提交合并。 然后保存文件退出vim;
pick 56a06ef change 1: remove one blank line
s edbeab5 change 2: add log on MainActivity
# Rebase 23198ba..edbeab5 onto 23198ba (2 commands)
...
- 修改commit评论,将除了第一条评论外的评论全部删除,然后保存文件退出vim。
- 再次推送代码
git push -f
已经提交了一次,想继续提交时,采用git commit --amend
方法共用一个ID号,步骤如下:
- 修改代码之前,请先
git fetch --all
;git pull
; 拉取最新的代码再修改 - 如果已经提交PR,此时可以基于上一个PR进行修改,使用
git add *
;git commit --amend
;git push -f
; - 通过commit --amend可以把当前的修改叠加到上一次代码中
2.4 删除本地文件后 Git如何从远程仓库重新获取
2.4.1 需求描述
删除本地文件后,想从远程仓库中从新Pull最新版文件
2.4.2 解决方法
git fetch --all
git reset --hard origin/master
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhggckjh
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13