作者介绍
高校的传统软件工程实践教学方式,即学生在实验室编写好代码,通过使用U盘拷贝或者QQ邮箱的方式发送给教师审核代码,过程繁琐且易出问题。而在码云使用 Git 分支之间互不影响,成员可以独立开发,这样不仅可增加团队软件开发的效率,还可帮助教师节省时间,提升课堂教学水平。
在我们的团队中,我作为管理者,创建了一个叫 HelloWorld 的项目,大家各自在本地进行开发,将自己的工作贡献到我们的团队项目中。为了便于审核,我希望大家先将自己的贡献先放在属于自己的一个分支上,以后,你把你每次的贡献都放在这个分支。等我审核后,认为你的贡献是用心的、有价值,我再合并到主分支。这个主分支的所有内容就是我们进行团队开发最终的成果!是不是很有成就感!下面,咱们就开门见山,跟着我边做边学!
Step1:
我们先去码云上把我创建的 HelloWorld 项目找到,并把它克隆下来。点击“克隆/下载”,把下面这个项目地址复制下来。
Step2:
在本地某个文件夹(你希望这个项目放在哪,如下图我想把这个项目放在“软件工程助教”的文件夹下),进入该文件夹,右键选择 git Bash Here 进行 clone 操作,我们使用的命令是:
git clone [项目地址]
这个项目地址就是你刚才复制的我们的项目地址。回车,出现了下图中提示,done.说明克隆完成,这时候你的文件夹下就有了一个 HelloWorld 的文件夹,以后,我们的每次贡献代码就放在这里。下面,我们要在这个 HelloWorld 文件里进行操作,所以要看仔细了,我们现在还没有进入到这个文件夹,我使用
cd HelloWorld/
进入到这个文件夹,现在我们就可以进行下面的工作了。
Step3:
接下来,你就安心的进行开发吧,1个小时后(我相信以你的能力这点小问题1个小时完全可以解决!),你的代码完成了,就可以把你的工作贡献到项目上了,看下面我写好了一个 HelloWorld_Test,存在于我们的 HelloWorld 文件夹下。
Step4:
但是现在,我做的工作还在我本地,下面我们就要把我们做的工作贡献到远程的项目中(码云项目)。而且,正如我所说,我们做的工作难免会有疏漏和错误,这是不能直接作为项目的一部分的。所以我们还要在远程创建分支,先把我们的工作放在里面。接下来,我们继续进行操作(再次查看一下你的git命令行是否在 HelloWorld 这个项目文件夹里)先在本地创建一个分支,名叫 mzf:
git checkout -b mzf
当你使用了我上面的命令时,实际上你不仅创建了一个新分支,而且你会发现你已经在这个分支里了,如下图蓝色括号里的内容由( master )变成了( mzf ),如果你不放心有没有创建成功,还可以像我一样,使用
git branch -a
查看所有分支,来确定里面有没有属于你的那个分支,如下图,出现了 master 和 mzf,说明我刚才创建的分支成功了。但是细心的你继续往下看,是否发现下图中的红色语句,它是在提醒我们:在远程仓库中,还没有这个分支,如果这个时候进行 push,会将你的项目 push 到 master 分支,但这不是我们想要的。所以,我们还要创建远程的 mzf 分支。
Step5:
要能使我们的工作 push 过去,我相信大家通过学习都知道还需要先进行 git add 和 git commit -m 操作,但是这里我还是想让大家养成好习惯:git add 之前先查看。使用下面的命令:
git status
我们发现你工作的所有内容都会以红色的语句提示给你。确定这是你的工作内容后,就可以安心进行 git add 了。
git add .
git commit -m"test"
git add 后的“."表示将所有文件从工作区存到暂存区,然后使用 git commit -m "test" (引号的内容可以是本次更新版本等信息)将暂存区内容提交到本地分支。完成之后可以再查看一下当前状态。
Step6:
将文件提交到本地分支后,就可以提交到远程仓库了。我们先进行
git push
这时候它提示我们下图中的语句,是说:远程没有这个分支,如果你想把 mzf 分支提交到远程的mzf分支,需要使用
git push --set-upstream origin mzf
这样,我们就在远程仓库也创建了一个同名分支,并且将本地分支的内容提交上去了。
Step7:
我们进入码云的团队项目中查看分支,发现多了一个 mzf 分支,选择这个分支,里面的内容就是你提交的工作。至此,我们的任务就完成了。下面就是等待审核了。我相信,只要我们勤奋用心,我们的付出都是有价值的!
Step8:
完成以上步骤之后,以后我们每次提交工作不需要再创建新的分支,而是提交到你第一次创建的分支中。这时,我们只需要先进入自己的分支,使用命令:
git checkout [分支名]
然后在该分支中进行 add、commit 和 push 操作,而且由于仓库中已经有我们的分支,所以我们可以直接使用命令:
git push
总结与提示:
通过以上步骤,不仅提高了学生提交实验代码效率,还很好的培养了学生的团队协作与沟通能力。通过码云 构建真实的“情景化”教学,使得每一个知识点都简单明了,易于掌握。最重要的是,随时随地教师都可以与学生进行互动,答疑解惑,改变了高校传统教学中固定时间、固定教室的单一模式。
除此之外, 码云 高校版中还提供代码质量检测、人员贡献统计等功能,可以辅助教师完成对学生的教学评分,提高教学质量与结果。
更多关于码云高校版的信息,请访问 https://gitee.com/education
往期精彩:
功能更新 | 码云上线 Pull Request 自动分析代码质量功能
网友评论