标签:
git remote -v --verbose
的简写,显示远程仓库对应的克隆地址
git会把出现变更的文件直接拷贝,形成新的blob类型的快照,而非与上一个版本的diff。而不是在每个版本中记录着各个文件的具体差异。
所以一旦需要查看某版本直接load即可,而其他差异版本控制需要做merge,所以快。空间换时间。
并非每个当前版本都需要做备份,为提高性能,若文件没有变化,Git不会再次保存,而只对上次保存的快照作一链接。
git会在隐藏目录.git里存在object里,定期会优化,保证快照空间,和读取时间的平衡。
Git的四种基本类型
BLOB:每个blob代表一个(版本的)文件,blob只包含文件的数据,而忽略文件的其他元数据,如名字、路径、格式等。
TREE:每个tree代表了一个目录的信息,包含了此目录下的blobs,子目录(对应于子trees),文件名、路径等元数据。因此,对于有子目录的目录,git相当于存储了嵌套的trees。
COMMIT:每个commit记录了提交一个更新的所有元数据,如指向的tree,父commit,作者、提交者、提交日期、提交日志等。每次提交都指向一个tree对象,记录了当次提交时的目录信息。一个commit可以有多个(至少一个)父commits。
TAG:tag用于给某个上述类型的对象指配一个便于开发者记忆的名字, 通常用于某次commit。
基本的 Git 工作流程如下:
git fetch到远程仓库中拉取从你上次克隆以来别人上传到此远程仓库中的所有更新(或是上次 fetch 以来别人提交的更新)。fetch命令只是将远端的数据拉到本地仓库,并不自动合并到当前工作分支,只有当你确实准备好了,才能手工合并。
git fetch origin
来同步远程服务器上的数据到本地。该命令首先找到origin
是哪个服务器,然后从上面获取你尚未拥有的数据,更新你本地的数据库,然后把origin/master
的指针移到它最新的位置上。
git clone自动创建本地的 master 分支用于跟踪远程仓库中的 master 分支。标签:
原文地址:http://www.cnblogs.com/fuleying/p/5331184.html