git 命令

来源:互联网 发布:java 动态仪表盘 编辑:程序博客网 时间:2024/06/07 12:50

偶然发现哈佛大学的关于git的说明,帮助我理解了很多东西,所以想把里面的一些我认为挺重要的概念拿出来记录一下

 首先是几个基本概念

 一个版本库由以下几方面组成:

  1. 一组提交对象(commit objects)
  2. 一组指向提交对象的头引用(HEAD)
一个提交对象由以下几方面组成:
  1. 一系列反映项目在特定时间点的状态的文件
  2. 指向父提交对象的引用
  3. 一个根据当前提交的文件内容计算出来的40个字符的SHA1名称。
git的版本控制的理念就是构建一副由提交对象组成的图

一次提交发生的事情
  1. git add 将文件添加到版本控制当中
  2. git commit 创建一个commit对象
  3. 新的commit对象以HEAD所指对象作为父commit对象
  4. HEAD指针指向新的commit对象
git commit -a会将所有有改动的文件添加(不包括新的文件,新的文件需要git add










git merge --squash


git merge --ff