首页 > 代码库 > Git仓库
Git仓库
内容还未完整,往后学习过程继续添加...
一.参考他人文章
http://www.cnblogs.com/Josiah-Lin/p/6847973.html (Git详细教程---多人协作开发)
工作区
暂存区
仓库
Git 保存的不是文件差异或者变化量,而只是一系列文件快照。
分支其实就是从某个提交对象往回看的历史
3.2 分支的新建与合并
现在让我们来看一个简单的分支与合并的例子,实际工作中大体也会用到这样的工作流程:
1. 开发某个网站。 2. 为实现某个新的需求,创建一个分支。 3. 在这个分支上开展工作。
假设此时,你突然接到一个电话说有个很严重的问题需要紧急修补,那么可以按照下面的方式处理:
1. 返回到原先已经发布到生产服务器上的分支。 2. 为这次紧急修补建立一个新分支,并在其中修复问题。 3. 通过测试后,回到生产服务器所在的分支,将修补分支合并进来,然后再推送到生产服务器上。 4. 切换到之前实现新需求的分支,继续工作。
由于 Git 中的分支实际上仅是一个包含所指对象校验和(40 个字符长度 SHA-1 字串)的文件,所以创建和销毁一个分支就变得非常廉价。
在 Git 中提交时,会保存一个提交(commit)对象,该对象包含一个指向暂存内容快照的指针,包含本次提交的作者等相关附属信息,包含零个或多个指向该提交对 象的父对象指针:首次提交是没有直接祖先的,普通提交有一个祖先,由两个或多个分支合并产生的提交则有多个祖先。
我们假设在工作目录中有三个文件,准备将它们暂存后提交。
一旦分支中的提交对象发布到公共仓库,就千万不要对该分支进行衍合操作。
git stash push 将文件给push到一个临时空间中
git stash pop 将文件从临时空间pop下来
为什么要把文件给push到一个临时空间中,然后又为什么将文件从临时空间pop下来。
Git仓库