前言
博主在GitLab搭建一文中介绍了GitLab搭建的方法,首先GitLab是一个Web应用程序,是在线的Git仓库管理工具,具有图形化的界面和丰富的功能,比如可以使用root账号对Git仓库进行全局管理。而Git是一个分布式版本控制系统,它的优势在于它有远程仓库和本地仓库,用户可以离线在本地仓库提交,只需在连网时再push到相应服务器的远程仓库即可,用户在本地就可以查看版本历史信息, 不像SVN这种集中式版本控制系统,版本信息只是保存在主服务器上。在这篇博客里,博主就介绍下Git的一些基本概念以及工作流程。
Git工作区域
Git项目的工作区域有三种类型:版本库(Repository),工作目录(Working Directory) 和暂存区(Stage):
- 版本库(Repository):在Git项目的文件夹中,有个隐藏文件夹.git,这个就是Git的版本库,用来保存项目的元数据和对象数据库等,也可以叫做本地仓库。
- 工作目录(Working Directory):工作目录里存放的就是我们需要版本控制的源文件,比如代码文件,文档等。
- 暂存区(Stage):暂存区域是一个文件,一般是.git/index文件,保存了下次将提交的文件列表信息,也可以把暂存区叫做索引(index)。
Git文件状态
在Git版本控制下的文件状态大致有四种:已提交(committed),已修改(modified) ,已暂存(staged) 和未跟踪(untracked):
- 已提交(committed):已提交状态表示文件已经被保存在本地的数据库中了。
- 已修改(modified):说明文件被修改,但是还没有提交保存在本地数据库中。
- 已暂存(staged):把已经修改的文件的当前版本做了标记,放在下次提交清单中。
- 未跟踪(untracked):表示文件在Git项目的工作目录中,但是没有参与Git的版本控制,如果要进行版本控制,需通过git add命令将状态改为staged。
Git工作流程
下面一张图概括了Git的基本工作流程:
基本的操作如下:
- git clone(克隆):从远程仓库克隆项目到本地仓库。
- git fetch(抓取):从远程仓库抓取一个分支版本到本地,但是不会自动merge(合并),一般配合git merge命令使用。
- git pull(拉取):从远程仓库拉取一个分支版本到本地,再与本地的当前分支合并,可以把git pull看作是git fetch和git merge两个步骤的结合。
- git checkout(检出):从本地仓库检出一个分支版本对工作目录进行修订,简单来说就是文件恢复。
- git add(添加):将工作目录中untracked的文件添加到暂存区,进行版本管控。
- git rm(去除):将文件从staged状态变成untracked状态,去除版本管控。
- git commit(提交):提交本地仓库。本地仓库中保存各个历史版本。
- git push(推送):将本地仓库的分支版本推送到远程仓库,与团队成员共享。
在之后的博客中,博主将带来Git具体的命令介绍以及操作方法,非常感谢阅读。
本文介绍了Git的基本概念,包括版本库、工作目录和暂存区,以及文件的四种状态。Git工作流程涉及克隆、添加、提交、推送等操作。文章还提到了GitLab作为在线Git仓库管理工具的角色,并预告后续会深入讲解Git的命令和操作。
1986

被折叠的 条评论
为什么被折叠?



