欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!
Q: branch,index,tree,commit,clone,fork,master,origin,head,checkout,checkin等等这些命令是什么意思?针对远程和本地使用 push 和 pull命令加上这些项让 Git 更加难以理解。
 
在我第一次邂逅 GitHub 之前从没有用过版本控制系统,因而 Git 终端成为了我的恶梦。网上“简单的”教程试图使用终端来教会大家使用 Git。并且这些形象化的教程,对这些命令的意义不作解释直接使用。
 
Blob
 
你可能没怎么见过‘blob’这个单词,但它确是 git 中最基本的数据存储结构。每次文件改变,Git 直接存储文件内容,这在git术语里被称作 Blob。
 
4254a17be3(哈希)
 
你看到的这些数字是内容的 SHA1 哈希,这些哈希值在git中作为每个对象的唯一标识,这些对象可能是commit,tree,或者 blob。哈希由 40 个字符构成,但仅仅需要前几个字符(在 Github 中是 10 个)就足够成为唯一的标识。
 
Tree(即文件夹或目录)
 
在Git术语中树就像文件夹或者目录。通常在你的git库的顶部有一个树,用来记录哪些文件(又名 blobs )和文件夹(又名 trees )的位置。
 
每个树都有一个哈希和内容信息
 
了解更多 Git Object: tree | http://GitGuys.com
 
Commit (即快照)
 
一个更加详细的 commit,tree 和 blob 结构。
 
可以把 Commits 想象成一个快照:它们记录某个时间点相对应树的样子。每次提交会有一个哈希,提交者信息,时间以及注释。
 
了解更多 Git Object: Git Commit - GitGuys
 
Check in = 做一次提交
 
提交的另一种叫法。
 
Commit History(提交历史)
 
如果你做了一些改变并且提交,这次提交保存了一个指向上一次提交的指针。所以提交“流”是单向的。提交“流”可以被分割为分支。
 
Branch(即另存为)
 
一个分支是一系列的提交,这个分支可以分成更多的分支。默认分支名是 master,确切的说仅仅是一个可移动的指针。起初,会有一个 master 分支指向了你的最后一次提交。当你每一次提交,指针会自动的移动去指向最后一次提交。
 
和真正的分支一样,它也可以被进一步的拆分。你可以在每一个分支上独立的工作。比如,同一时刻使用 Windows XP 和 Windows 7 在不同的版本下相互独立的进行工作。可以把一个基本的 Linux 拥有各种不同的风格想象成不同分支。
 
你可以使用‘git show-branch’命令形象化地看到和下图类似的提交和分支。

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h63664.shtml