Git:版本控制器
- 撤销更改功能
- 一个包含所有更改的历史完整记录
- 对改动原因进行文档记录(commit message功能)
- 容易恢复任何一个版本的项目信息
- 历史记录的多种不同分支创建(可以合并到主分支:master branch)
- 在团队中,解决冲突的能力
- 项目中独立工作在不同的分支,实现不同的功能,最终可以合并这些功能
GitHub:一个存储Git数据库副本的网站,及实线更多额外功能
- 提出问题功能(issues)
- 独立的基于分支的协同工作(利用branches【在各自的branches中实现自己的功能】,和pull requests【通过拉请求合并到master branch中】)
- 查看工作进展(通过查看pull request列表,可以查看项目当前的所有功能,并通过查看pull request中的条目,查看项目最新的状态变化)
- 查看团队的进展(使用pulse 或者 commit history查看)
关键概念
- commit
提交更改发送到Github上。 - commit message
每次做出提交时,都要发出的消息,关于为何做出这样的改动。 - branch
使用分支进行实验或者创建一个新功能。 - master branch
创建一个新的Git项目,都会有一个默认的master branch。一旦这个分支准备发布,则项目应完全停止。 - feature branch
不论什么时候创建一个新的功能,都将创建一个分支,称为功能分支。 - release branch
从技术角度,feature和release没有差别。其主要用来存放必要的补丁或更新记录。 - merge
将一个分支完成的全部工作归并到另一个分支,通常是归并到master branch中。 - tag
用于标明发布的版本。 - check out
找到一个不同版本的项目记录,以及时查看该时间点的所有对应文件。 - pull request
最初,pull request是用来请求别人复查已经完成的分支工作,并将其合并到master branch中。现在,其多用于项目早期,用以讨论可能的功能。 - issue
GitHub中用以提出问题的功能。 - clone
从GitHub上下载一个项目的副本,这样可在自己电脑上进行工作。 - fork
当遇到别人写的项目时,你想要对这个项目提交修改。首先在GitHub上用你的账户fork这个项目,称为分叉存储库。然后你可以clone到本地,修改,最后使用pull request提交回最初的项目。