首页 > 代码库 > 现代软件工程 第3-6章 作业

现代软件工程 第3-6章 作业

1.GitHub版本更新流程

题目:请参照此文:http://www.ruanyifeng.com/blog/2015/12/git-workflow.html 制定本组项目的GitHub版本更新流程。

    广泛使用的工作流程有Git flow、Github flow和Gitlab flow。比较了三种工作流程,我们选择了Github flow流程。有以下几点原因:

       1.项目规模较小,用Git flow的简化版就能达到我们的需要。

       2.它长期只有一个分支 master,利于管理

       3.因为项目要不断修改,不断改进,需要“持续发布”

       4.小组成员编码能力有限,很多地方需要大家一起协作,所以不便分成很多分支

技术分享

 

(引用:http://www.ruanyifeng.com/blog/2015/12/git-workflow.html)      

      具体Github flow更新流程操作如下:

      第一步:创建新的分支

      首先我们用git checkout -b flowtest 命令 创建一个分支,git branch 命令可以看出现在有两个分支,并且现在在flowtest 分支。

技术分享

      第二步:发起一个pull request

      以代码规范文档为例。首先将文档在本地创建之后,用git add、git commit、git push命令之后,上传到远程分支flowtest中。这时,这个分支目前的工作已经完成,可以进行合并操作了。因为是多人协作,所以我们要通知其他Collabrators。我们可以在Github网站上看到pull request页面。这时Pull request数量还是0。

技术分享

      此时发起一个pull request有两种方法。一个是点开pull request页面,读完introduction之后,会有一个create a pull request的链接,点击直接可以发起。

技术分享

      另一种方法是在code选项卡这点击New pull request按钮。

技术分享

       最后在Open a pull request页面填写相关的文字。(文档支持markdown)就可以发起一个pull request了。

技术分享

      第三步:评审文档、代码

      当一个pull request发起后,小组的所有成员都可以用自己的账号看到这个请求。这时,大家可以提交自己的想法,有什么需要改进的,如果觉得已经达到要求,就可以通过Merge pull request按钮,将这个分支merge到主分支。

     技术分享

      第四步:删除分支

      pull request被接受后,这个分支就没有作用了,此时我们将该分支删除即可。

      技术分享

      这时,分支就被我们删除了,同事pull request也被我们关闭了。这时就剩下master主分支了,可以继续进行开发。但我们也可以随时查看之前的pull request的操作历史。

技术分享

      因此,以后我们小组的Github版本更新流程就采取Github flow的方式,具体操作就按照上面的说明来操作。

 

2.代码规范

题目:制定本组的代码规范、GitHub提交源码的标准。

      经讨论,我们决定用ajax+C#.net开发网页,用Visual Studio IDE开发。因此,我们制定了C#的代码规范。

      因为代码规范特别多,就不在这一一列举了,以下是代码规范的简单目录。具体的代码规范,请前往https://github.com/Hahalovejava/Calculate 在Github 中,我们上传了C#_code_standard.docx和Code_Standard.md两个版本的代码规范。

      一、代码注释

           1、代码注释约定

           2、模块头部注释规范

           3、方法注释规范

           4、代码行注释规范

           5、变量注释规范

     二、命名规则

          1、命名的基本约定

          2、类和接口命名

          3、方法命名

          4、变量命名

          5、组件名称缩写列表

      三、其它规范

          1、编程风格

          2、空白

          3、错误处理

          4、其它

 

3.例会

现代软件工程 第3-6章 作业