Git学习笔记(2)——工作区和版本库
2016-02-24 20:05
225 查看
工作区和版本库之间的关系:
版本库中又主要分为暂存区和当前分支。
所以,现在来复现git提交文件的两个步骤:
1. git add 从工作区将文件添加到暂存区。
2. git commit 将暂存区的所有文件一次性提交到当前分支。
每次提交完,工作区,暂存区,当前分支又是什么状态呢?
工作区:山是山,水是水,还有备份在当前分支。
暂存区:空空如也,什么玩意都被提交到了分支上。
分支:保存了工作区文件的所有版本的历史。
接下来的概念非常重要:Git跟踪的是文件的修改,而非文件本身。
比如说,文件新增了一行,删除了一行,更改了某些字符标点,或者创建和删除整个文件,都算是一个修改。
就像是数学中的逆运算,我对文件实施了一个加法运算,如果想进行版本退回怎么办,那就逆向实施一个减法。
然而最佳的理解方式就是代码实践,给两个简单的对比方案:
随意拿一个文本进行修改:
文件每次被修改,如果没有add到暂存区,就不能越过暂存区直接提交。
版本库中又主要分为暂存区和当前分支。
所以,现在来复现git提交文件的两个步骤:
1. git add 从工作区将文件添加到暂存区。
2. git commit 将暂存区的所有文件一次性提交到当前分支。
每次提交完,工作区,暂存区,当前分支又是什么状态呢?
工作区:山是山,水是水,还有备份在当前分支。
暂存区:空空如也,什么玩意都被提交到了分支上。
分支:保存了工作区文件的所有版本的历史。
接下来的概念非常重要:Git跟踪的是文件的修改,而非文件本身。
比如说,文件新增了一行,删除了一行,更改了某些字符标点,或者创建和删除整个文件,都算是一个修改。
就像是数学中的逆运算,我对文件实施了一个加法运算,如果想进行版本退回怎么办,那就逆向实施一个减法。
然而最佳的理解方式就是代码实践,给两个简单的对比方案:
随意拿一个文本进行修改:
1.第一次修改-->git add-->第二次修改-->git commit 2.第一次修改-->git add-->第二次修改-->git add-->git commit
文件每次被修改,如果没有add到暂存区,就不能越过暂存区直接提交。
相关文章推荐
- RPC failed; result=22, HTTP code = 411
- git更新已經刪除的文件
- 提取Git每次提交后Commit的文件
- GIT迁移服务器
- 分布式版本管理git入门指南使用资料汇总及文章推荐
- git终极指南:在实际开发中的应用
- Git远程操作详解
- 25个 Git 进阶技巧(翻译)
- 详解版本控制利器Git,SVN的异同以及适用范围
- Ruby实现的删除已经合并的git分支脚本分享
- 在 Shell 提示符中显示 Git 分支名称的方法
- Git使用基础篇(一些常用命令和原理)
- git fork同步是什么意思?
- Git使用小坑 Out of memory错误的解决方法
- Python的高级Git库 Gittle
- 使用GIT进行源码管理――GUI客户端小结
- 使用git代替FTP部署代码到服务器的例子
- linux系统安装git及git常用命令
- 分享下自己总结的Git常用命令
- Git 常用命令速查表(图文+表格)