这是我参与「第三届青训营 -后端场」笔记创作活动的的第7篇笔记.
课程目标
- 学习基本命令,并了解原理,遇到相关问题能自行排查解决
- 了解研发流程中的基本概念和规范,学会正确使用Git
1 为什么要学习 Git
- 协同工作
- 开源社区
2 Git 基本原理
基本原理:
- 每个库都有完整的提交历史,可以直接在本地进行代码提交
- 每次提交记录的都是完整的文件快照,而不是记录增量
- 通过Push等操作来完成和远端代码的同步
优点:
- 分布式开发,每个库都是完整的提交历史,支持本地提交,强调个体
- 分支管理功能强大,方便团队合作,多人协同开发
- 校验和机制保证完整性,一般只添加数据,很少执行删除操作,不容易导致代码丢失
缺点:
-
相对svn更复杂,学习成本高
-
对于大文件的支持不是特别好(git-fs可弥补)
3 git 基本命令
为什么配置好了Git配置,但依然没有办法拉取代码?
- 免密未配置
- Instead of 配置没有配,配的ssh免密配置,但使用的还是http协议访问 为什么Fetch了远端分支,但本地当前分支历史没有变化?
3.1 git 目录
项目初始化
mkdir study && cd study
git init
3.2 常见 Git 配置
用户名配置
git config --global user.name "cjw"
git config --global user.email cjw@goole.com
查看remote
git remote -v
添加remote
git remote add origin_ssh git@github.com:git/git.git
git remote add origin_http https://github.com/git/git.git
git add
git commit -m "note"
分支 git checkout -b 标签git tag 一般表示的是一个稳定版本,指向的commit一般不会变更