Git 学习笔记①
# Git 简介
Git 是一个开源的分布式版本控制系统,用于高效地处理项目的多人开发和版本控制问题。
Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件,它采用了分布式版本库的方式,不必服务器端软件支持。
著名的 GitHub 就主要提供基于 git 的版本托管服务。
# Git 工作区域
工作区(workspace):用户直接编辑修改文件的区域,用户直接可见的 Git 仓库目录。
暂存区(stage):保存了下次将提交的文件信息,一般存储在 Git 仓库目录中的隐藏管理文件 .git 中,是一个叫index的文件。
版本库(repository):在 Git 仓库目录的隐藏文件 .git 内,用于存储版本管理信息。
# Git入门操作
# 创建 Git 仓库
创建一个目录作为之后将要创建的 Git 仓库(项目目录)。
可使用 git status
命令查看仓库状态。如下,我们还没有创建 Git 仓库。
现在,我们可以使用 git init
命令初始化 git 仓库(创建git仓库),并使用 git status
命令查看仓库状态。
# 将文件加入暂存区
对文件的修改最开始保存在工作区内,需要我们进行 add 操作才会保存到暂存区。 我们先创建一个test文本进行测试:
接着我们可以使用 git add <file>
命令把文件加入暂存区。
同时注意我们也可以使用 git rm --cached <file>
删除暂存区内的文件。
# 提交文件
只有我们(从暂存区)正式提交了文件,这个文件才正式进入了版本管理系统。
我们使用 git commit -m 'some information'
命令提交文件。-m表示提交的相关信息,我们可以在其后的 ' ' 内输入我们想要被看到的信息。
同时我们可以使用 git log
命令来查看 commit 记录(包括上面 -m 提交的信息)。
注意:第一次使用可能需要用以下代码设置全局个人信息(会在提交log内看到)。
git config -global user.name "你的名字"
git config -global user.email "你的邮箱"
将上述代码中的 -global
去掉便可以设置本项目(本 git 仓库)特有的个人提交信息。
# 创建分支
我们可以使用 git branch
命令查看当前分支状况。在此之前,我们用 git branch <name>
命令从我们当前所在的分支创建一个新分支出来。下图中的 *
表示我们所在的分支。
# 切换分支
为了切换到我们的其他分支,我们可以使用 git checkout <name>
命令。
# 删除分支
命令 git branch -d <name>
可用于分支合并成功后将其删除。
命令 git branch -D <name>
可用于强制删除分支。
# 合并分支
使用命令 git merge <name>
可将name分支合并到我们所在的分支(有冲突可能会合并失败,现阶段暂时不考虑冲突)。我们在test3分支内随便做了些改变(注意需要add、commit)。
# 标记状态
我们可以使用 git tag <name>
命令为我们当前的状态进行标记为name。 git tag
可以查看标记的历史记录。当我们想要切换到某一个标记的状态时,使用命令 git checkout <name>
。
# 注意
当需要从存储库中恢复文件到暂存区时,可使用 git reset HEAD <文件名>
;
当需要从暂存区中恢复文件到工作区时,可使用 git restore <文件名>
;