1 工作流程
首先需要说明的是,git的版本库是以分支的形式进行管理的。当我们初始化一个新的版本库时,会自动创建版本库的第一个分支master
,我们对本地仓库的修改都是提交到这个master
分支的。关于分支,后续会单独介绍。
本地仓库由git维护的三个组件构成:
1)工作区:文件系统中的文件目录
2)stage\index(暂存区):缓存区域,保存需要提交到版本库的文件(改动)
3)HEAD:这是一个指针,指向当前分支
上述stage以及HEAD保存在工作区中的.git/
目录中。
工作流程图如下:
如上图所示,当我们需要向版本库中添加新的文件或者修改文件时的工作流程:
首先,使用
git add
指令将文件从
工作区添加到
stage中;
而后,使用
git commit
指令将
stage中的所有内容提交到当前分支。
2 本地仓库管理
接下来主要介绍如何对本地仓库进行管理,其中包括:查看状态、添加文件、提交文件、版本管理、撤销修改、删除文件等。
2.1 状态查看
我们可以使用git status
指令实时查看当前版本库的状态,然后根据当前的状态进行后续操作,在日常使用过程中经常会用到这个指令,可以帮助我们实时掌握版本库的状态。
示例:
首先通过一下指令创建一个本地版本库,并使用git status
指令查看版本库状态:
$ git init MyGitTest #创建本地版本库
$ cd MyGitTest #切换到版本库的工作目录
$ git status #查看版本库的状态
On branch master
Initial commit
nothing to commit (create/copy files and use "git add" to track)
2.2 添加文件到stage中
指令格式: git add filename
添加方式有如下几种:
$ git add README.md #仅添加README.md文件
$ git add *.py #添加所有python文件
$ git add . #添加当前目录下的所有文件
示例:
在MyGitTest
版本库中编辑README.md
文件,添加如下内容:
a test for git
将该文件添加到stage,并查看版本状态:
$ git add README.md
$ git status
On branch master
Initial commit
Changes to be committed:
(use "git rm --cached <file>..." to unstage)
new file: README.md
通过版本状态信息,我们有如下两个选择:
1)使用commit
指令将其提交到当前分支
2)使用提供的git rm --cached README.md
指令将添加到stage中的README.md文件撤销,或者使用git reset