网络与部署(下)git的使用|青训营笔记

143 阅读1分钟

这是我参与「第三届青训营 -后端场」笔记创作活动的的第8篇笔记」

为什么要学习git

  • 协同工作,代码管理
  • 开源社区,大多基于git维护

git是什么

  • (分布式)版本控制
    • 更好关注变更,方便对改动的代码进行检查,回滚,预防事故发生
    • 本地式 RCS
    • 集中式 SVN
      • 游戏团队常用
      • 支持二进制文件,对大文件支持更友好
      • 本地并没有版本管理,只有远程仓库才有完整的版本历史
    • 分布式 Git
      • 每个库都有完整提交历史
      • push等是与远端代码进行同步
      • 本地就能进行提交commit,每次提交都是完整的文件快照
      • github全球最大的代码托管平台
      • gitlab全球最大的开源代码托管平台
      • Gerrit安卓

git基本使用

image.png

目录介绍

image.png

  • config
    • global
    • system
    • local

fetch开源代码,push到自己的仓库 image.png

  • HTTP Remote(不推荐 不安全)

image.png

  • ssh Remote ed25519 image.png

image.png

image.png

image.png

image.png

image.png

image.png

tag object:指向的是commit里的哪个object,是谁生成的tag等。 image.png

通过parent和前一个commit做串联

image.png

image.png

image.png

image.png

image.png

image.png

多人合作

如果不清楚远端具体代码,最好先fetch到本地 image.png

image.png

image.png

常见问题

image.png

git研发流程

image.png

集中式工作流

image.png

分支管理工作流

image.png

image.png

image.png

  • 代码合并

image.png

image.png

image.png

image.png

image.png