[Git] 007 三棵树以及向本地仓库加入第一个文件
1. “三棵树”
1.1 前言
- 理论上要稍稍复杂一点
- 我在这里说得简化一点
- 顺道挖个坑
- 下回具体介绍
- 坑号编码:Git07-1
1.2 看图

1.3 简介
- 树左:工作区(平时写代码的地方)
- 树中:暂存区(临时存档;类似图书馆暂存物品的柜子)
- 树右;仓库(存放所有数据的地方;HEAD 的指向为当前版本)
2. 向本地仓库加入文件
2.1 准备
- 切至目标仓库路径
- 新建一个文件(比如,我新建一个 "README.md")

- 此时的 "README.md" 在工作区
2.2 查看状态
- 使用
git status

- 上图大致意思是说
- 当前分支为 "master" 分支
- 目前还没进行过 "commit"
- "README.md" 未被“追踪”(注意,此时的 "README.md" 是红色的)
- 建议使用
git add <file>来提交内容

- 此操作没有回馈(没有消息就是最好的消息)
2.4 继续查看

- 上图大致意思是说
- 当前分支为 "master" 分支
- 目前还没进行过 "commit"
- README.md 可以被“提交”,(注意,此时的 "README.md" 是绿色的)
- 提示
- 命令:
git rm --cached <file> - 作用:将刚刚 "add" 进 "stage" 的文件(改变)“踢出去”
- 命令:
2.5 使用上方提示的命令
- 命令:
git rm --cached README.md

分析
- 工作区的 "README.md" 还在,并且没有改变
- 暂存区刚刚 "add" 进去的 "README.md" 被删除了
- "--cached" 在 [Git] 009 逆转未来 的 "3.2" 还会提到
2.6 恢复
- 重复 "2.3" 的操作
2.7 将文件加入本地仓库
命令:
git commit画面跳转

- 加入解释说明,保存退出(使用 "vi / vim" 的方法)

- 画面跳回

- 上图第 5 行的 "100644"
- "100" 指常规文件
- "644" 指文件权限,详情可见 [Linux] 010 权限管理命令 chmod 的 "chmod" 部分
2.8 最后再查看一下

[Git] 007 三棵树以及向本地仓库加入第一个文件的更多相关文章
- Git创建一个自己的本地仓库
如果我们要把一个项目加入到Git的版本管理中,可以在项目所在的目录用git init命令建立一个空的本地仓库,然后再用git add命令把它们都加入到Git本地仓库的暂存区(stage or inde ...
- [原]git的使用(一)---建立本地仓库、add和commit、status和git diff、版本回退使用git reset
在window下已经安装了git的环境 1.建立本地仓库 mkdir test #建立test目录 cd test #进入目录 git init # ...
- Git 学习(三)本地仓库操作——git add & commit
Git 学习(三)本地仓库操作——git add & commit Git 和其他版本控制系统如SVN的一个不同之处就是有暂存区的概念.这在上文已有提及,本文具体说明什么是工作区及暂存区,以及 ...
- Git学习-安装与创建本地仓库
前言 以前公司进行项目的版本管理都是用svn,最近公司推荐用git,把svn给关闭了.没办法,拿来主义.网上一番猛操作,勉强也能用了,给自己做个笔记. git安装 因为我用的是windos系统,在Wi ...
- 1、git基础介绍及远程/本地仓库、分支
1. Git基础介绍 基于Git进行开发时,首先需要将远程仓库代码clone到本地,即为本地仓库.后续大部分时间都是基于本地仓库上的分支进行编码,最后将本地仓库的代码合入远程仓库. 1.1. 远程仓库 ...
- Git详细教程之创建本地仓库和连接Github仓库
首先要知道不只有代码,任何类型的文件都可以进行版本控制,版本控制很重要的一个特性就是你可以随时修改,比如git会记录你的任何操作,如果你想要回退到任何一个历史操作,你可以通过git轻松达到. 本地仓库 ...
- Git的基本使用 -- 创建本地仓库
下载安装 Git-2.25.0-64-bit .exe 查看是否安装成功 git --version 创建本地仓库 创建一个文件夹用于存放项目文件 在创建好的文件中右键选择 Git Bash Here ...
- 使用Git GUI工具 上传本地仓库到 gitee码云仓库
前言: 网上关于git的命令操作与使用很多教程和博客,在使用git工具时我发现有一个 git Gui 可视化工具,我觉得十分的亲切,由于我之前一直是使用svn作为版本控制管理工具,都是可视化操作,使用 ...
- 删除本地仓库中的lastUpdated文件.bat
@echo off @ ECHO. @ ECHO. @ ECHO. 说 明 @ ECHO ------------------------------------------------------- ...
随机推荐
- 前端之JavaScript:JS之DOM对象一
js之DOM对象一 一.什么是HTML DOM HTML Document Object Model(文档对象模型) HTML DOM 定义了访问和操作HTML文档的标准方法 HTML DOM 把 ...
- spring5
Spring 是面向 Bean 的编程(Bean Oriented Programming, BOP) ,Spring 提供了 IOC 容器通过配置文件或者注解的方式来管理对象之间的依赖关系. 控制反 ...
- Docker(二):Docker入门教程
前言 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 ...
- [洛谷P3243] 菜肴制作
问题描述 知名美食家小 A被邀请至ATM 大酒店,为其品评菜肴. ATM 酒店为小 A 准备了 N 道菜肴,酒店按照为菜肴预估的质量从高到低给予1到N的顺序编号,预估质量最高的菜肴编号为1. 由于菜肴 ...
- python-hasattr()、getattr()、setattr()函数的使用
python中hasattr().getattr().setattr()函数 class A(): name = 'python' def __init__(self): setattr(self._ ...
- 利用BeautifulSoup爬去我爱我家的租房数据
因为之前对BeautifulSoup一直不是很熟悉,刚好身边的朋友同事在找房子,就想着能不能自己写个爬虫爬一下数据,因此就写了这个爬虫.基本都是边看书边写的,不过也没什么好讲的.直接粘代码了. # c ...
- 改变icon方向
例你想要箭头朝上的图标而你只有箭头朝下的图标,不幸的是你又没有朝上的图标,那就旋转图标. <i class="icon iconfont _icon-iconfontfanhui4&q ...
- HDU 6620 Just an Old Puzzle
Time limit 2000 ms Memory limit 262144 kB OS Windows 解题过程 感觉搜索不可行,状态太多了,120步,判断状态是否重复时,即使用std::map也太 ...
- os.environ.get()的用法
os.environ.get()是python中os模块获取环境变量的一个方法 import os JS_ADDRESS = os.environ.get("PALM_JS_ADDRESS& ...
- Json ignore on class level
Exclude all instances of a class from serialization in Newtonsoft.Json Every custom type can opt how ...