助教培训第四次作业——熟练掌握GitHub及Git的使用方法

1.Git 命令的理解和使用

  常用的Git命令可以查看官方文档,官方文档的网址:https://git-scm.com/docs 。虽然是英文界面,但是多查看官方文档,比在网上瞎查资料来的更快一些,或者可以选择一些比较有代表性的教程进行学习,很多编程学习网站都有Git的入门教程。下面列举几个学习git的网站,个人建议要学会查看官方文档,虽然很多功能在实际过程中不会使用到,但是官方文档的解释一般比较全面详细,然后再去查询一些网上的博客教程之类的会更加深理解。

  1. https://www.nowcoder.com/courses/2 :GitHub&Git入门基础
  2. https://progit.bootcss.com/#_pro_git :Pro Git 中文版
  3. https://www.bootcss.com/p/git-guide/ :git - 简易指南
  4. https://www.w3cschool.cn/git/ :W3Cschool Git教程
  5. https://www.runoob.com/git/git-tutorial.html :RUNOOB git教程
  6. https://www.liaoxuefeng.com/wiki/896043488029600 :廖雪峰的git教程
  7. https://git-scm.com/docs :官方文档

  Git命令的使用一般是采用命令行的形式,当然git也自带有一个GUI的图形界面,同时还可以使用TortoiseGit,采用的是图形界面, https://www.cnblogs.com/zlslch/p/7986039.html这篇博客中简单介绍了Git和TortoiseGit的区别。当然了,个人不建议初学者一开始就使用TortoiseGit,从git的命令行开始学起,后面再使用其他的工具自然就不会有太大的问题。

  Git命令基本上就是对仓库内的文件进行一个统一的版本管理,比较前后差异,记录版本的更改详情,有助于回溯项目开发历程。

2.记录进度情况,以半天一个时间单位,检测代码提交情况,燃尽图

  这次开发过程中,因为以前对Git和Github是一知半解,所以花费了很多的时间在学习这两个东西上面了,虽然学到现在还是云里雾里,有一些不能理解和解决的地方,但我会在之后的时间里,尽快把自己这些问题解决掉,能真正熟练掌握这两个工具的使用。这次的燃尽图因为issue设置的粒度过大,一共就设置了三个issue,所以展示出来不是特别好看,并且不知道为什么,三个close掉的issue,界面里只展示了两个完成点。

  

  至于代码开发的部分,本人完成了发布活动第一个和第二个界面。这次因为花费了很多时间在学习Git 和Github上,所以开发的部分有点简单。

3.多人协同开发总结和反思

  这次多人协同开发真的是印象深刻,首先就是git和github的使用不熟练,导致了开发过程中不断的重新创建分支,重新克隆最新项目,我个人认为的这一系列开发过程是:先克隆项目仓库到本地,然后创建属于自己的分支并push到远端,然后在本地完成自己的版本管理,在完成一个功能点以后,就推送到远端的个人分支上,再将个人分支的内容与开发分支合并,如果无法自动合并产生冲突,则需要手动解决冲突,即将最新的开发分支的内容拉取到本地进行合并,产生的冲突解决以后再推送到远程的个人分支,然后再与开发分支进行合并,合并如果还有冲突就继续解决。不知道这样的说法对不对,是我个人的理解。

  也许是我的理解有问题还是怎样,在实际操作过程中总会出现一些错误,在这次开发过程中,最大的问题就是不会解决冲突,上网搜索解决办法,也没有解决掉产生的冲突,所以就一遍遍的重新克隆,然后把自己的内容添加到项目里,一般情况下重新克隆后,修改以后进行合并不会出错,可以成功合并。

  其次还有一个问题就是merge功能的具体实现实在不太清楚,看网上的教程写的都很简单,当然上面列出的几个网址我也并没有全部都一一看过,所以不知道有没有详细的讲到merge的过程,因为我个人觉得git的版本管理,最重要的就是这一步,简单的介绍一个命令merge是不太够的,个人认为解决冲突的前提就是知道是如何进行合并的,为什么会产生冲突,这两个点都是比较困扰我的,因为这次作业只有两天时间,还是没办法学透git,所以会利用其它时间,在开学前争取搞明白这些问题。

  然后就是issue的这次设置粒度稍微有些大,所以没有很好的体现开发过程,以后会更加注意这方面的。

  最后想说的就是这次协同开发,虽然没有取得什么实质性的结果,但值得庆幸的是,看着Github的界面更加亲切了,不会像之前的课程一样因为看不懂,有很大的抵触情绪,所以不喜欢使用。对git的常用命令也可以做到不用查资料了,果真是熟能生巧啊,失败太多次自然就背下来了。与其他的助教伙伴的讨论也让我感觉到几个人的共同努力的确可以解决很多问题,互相帮助。能和他们一起共事很开心,大家都是很努力的人,每个人都投入了大量的精力到这次的作业中,因为虽然上学期的课程中对于git和gituhub有了简单的认知,也有简单的使用,但都非常非常的浅,所以这次需要花费很多时间更深入的进行学习。

助教培训第四次作业——熟练掌握GitHub及Git的使用方法的更多相关文章

  1. 助教培训总结——熟练掌握GitHub及Git的使用方法

    一.Git 命令的理解和使用 1.使用git前需要建立一个本地仓库,用Git GUI Here的话就可以直接选择Create New Repository.Git Bash Here输入 命令git ...

  2. 熟练掌握GitHub及Git的使用方法

    一.Git 命令的理解和使用 Git是一个快速,可扩展的分布式版本控制系统,具有异常丰富的命令集,可提供高级操作和对内部的完全访问. 分布式:Git版本控制系统是一个分布式的系统,是用来保存工程源代码 ...

  3. oo第四单元作业总结暨课程总结

    oo第四单元作业总结暨课程总结 一.本单元作业架构设计 本单元需要构建一个UML解析器,通过对输入的UML类图/顺序图/状态图的相关信息进行解析以供查询,其中课程组已提供输入整体架构及输入解析部分,仅 ...

  4. 2019OO第四单元作业总结&OO课程整体总结

    第四单元作业总结 第四单元的作业主题是UML图的解析,通过对UML图代码的解析,我对UML图的结构以及各种元素之间的关系的理解更加深入了. ------------------------------ ...

  5. 耿丹CS16-2班第四次作业汇总

    Deadline: 2016-10-13 12:00 作业内容 实验3-1 分别使用while循环.do while循环.for循环求1+2+3+ --+100. 实验3-2 分别使用while循环. ...

  6. 网络1711班 C语言第四次作业批改总结

    网络1711班 C语言第四次作业批改总结 助教有话说(写在前面) 近来,有同学跟老师和助教们反映:博客作业太多太麻烦,而且对编程能力提高似乎没什么帮助?在这里我要谈一谈我的感想. 博客作业的意义? 首 ...

  7. [2019BUAA软工助教]第0次个人作业

    [2019BUAA软工助教]第0次个人作业 一.前言 我认为人生就是一次次地从<存在>到<光明>. 二.软件工程师的成长 博客索引 同学们在上这门课的时候基本都是大三,觉得在大 ...

  8. c++的路上,我坚信,我可以 -----第四次作业体会

    第四次作业 传送门 1.浅谈"新对象"sstream和stack 第四次作业,就是在第三次作业上作修改,上周周末,我刚刚才完成了第三次作业,但是知道了队列如何应用,面对这次的sta ...

  9. 【西北师大-2108Java】第十四次作业成绩汇总

    [西北师大-2108Java]第十四次作业成绩汇总 作业题目 面向对象程序设计(JAVA) 第16周学习指导及要求 实验目的与要求 (1)掌握Java应用程序的打包操作: (2)掌握线程概念: (3) ...

随机推荐

  1. 【Leetcode_easy】876. Middle of the Linked List

    problem 876. Middle of the Linked List 参考 1. Leetcode_easy_876. Middle of the Linked List; 完

  2. Docker快速入门——Docker-Compose

    一.Docker-Compose简介 1.Docker-Compose简介 Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.Docker-Com ...

  3. Flutter 一些常用第三方库、插件

    网络请求 http ^0.12.0+2 https://pub.dev/packages/http https://github.com/dart-lang/http 该软件包包含一组高级函数和类,可 ...

  4. mui弹出二维码示例

    <div id="tap_popover" class="box mui-popover mui-popover-action mui-popover-bottom ...

  5. 【转帖】linux内存管理原理深入理解段式页式

    linux内存管理原理深入理解段式页式 https://blog.csdn.net/h674174380/article/details/75453750 其实一直没弄明白 linux 到底是 段页式 ...

  6. [转帖]QC 和 PD:关于你所不知道的快充

    QC 和 PD:关于你所不知道的快充 http://www.sohu.com/a/276214250_465976 2018-11-18 06:02 当我们使用支持 PD 或者 QC 快充协议的电源适 ...

  7. hadoop 伪分布启动-fs格式化

    1.独立模式(standalone|local) nothing! 本地文件系统. 不需要启用单独进程. 2.pesudo(伪分布模式) 等同于完全分布式,只有一个节点. SSH: //(Socket ...

  8. ASP.NET Core依赖注入多个服务实现类

    依赖注入在 ASP.NET Core 中起中很重要的作用,也是一种高大上的编程思想,它的总体原则就是:俺要啥,你就给俺送啥过来. 服务类型的实例转由容器自动管理,无需我们在代码中显式处理. 因此,有了 ...

  9. Docker从入门到掉坑(五):继续挖一挖 k8s

    在之前的几篇文章中,主要还是讲解了关于简单的docker容器该如何进行管理和操作及k8s上手避坑,在接下来的这篇文章开始,我们将继续对k8s模块的学习 pod是啥 在k8s里面,有很多新的技术概念,其 ...

  10. POJ 3233-Matrix Power Series( S = A + A^2 + A^3 + … + A^k 矩阵快速幂取模)

    Matrix Power Series Time Limit: 3000MS   Memory Limit: 131072K Total Submissions: 20309   Accepted:  ...