Git简介
Git 是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。通过Git 仓库来存储和管理这些文件,Git 仓库分为两种:
- 本地仓库:开发人员自己电脑上的 Git仓库。
- 远程仓库:远程服务器上的 Git 仓库。
commit: 提交, 将本地文件和版本信息保存到本地仓库。
push: 推送, 将本地仓库文件和版本信息上传到远程仓库。
pull: 拉取, 将远程仓库文件和版本信息下载到本地仓库。
当安装Git后首先要做到事情是设置用户名称和email地址, 这是非常重要的, 因为每次Git提交都会使用该用户的信息。
打开Git命令行执行下面命令:
- 设置用户信息
git config --global user.name "itcast"(设置用户名)
git config --global user.email "itcast@itcast.cn"(设置email地址)
- 查看配置信息
git config --list
上面设置的user.name和user.email并不是我们在注册码云账号时使用的用户名和邮箱, 此处可以任意设置。
获取Git仓库
本地仓库初始化
执行步骤如下:
- 在任意目录下创建一个空目录(例如repo1)作为我们的本地Git仓库。
- 进入这个目录中,点击右键打开Git bash窗口。
- 执行命令 git init。
如果在当前目录中看到.git文件夹(此文件夹为隐藏文件夹)则说明Git仓库创建成功。
本地克隆远程仓库
可以通过Git提供的命令从远程仓库进行克隆,将远程仓库克隆到本地。
命令形式: git clone 【远程Git仓库地址】
基本概念
版本库: 前面看到的.git隐藏文件夹就是版本库,版本库中存储了很多配置信息、日志信息和文件版本信息等。
工作区: 包含.git文件夹的目录就是工作区,也称为工作目录,主要用于存放开发的代码。(.git所在文件夹以及其同级文件夹就是工作区)
暂存区: .git文件夹中有很多文件,其中有一个index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方。
工作区文件状态
查看git文件状态
git status
Git工作区中的文件存在两种状态:
untracked 未跟踪(未被纳入版本控制)
tracked 已跟踪(被纳入版本控制)
Unmodified 未修改状态
Modified 已修改状态
staged 已暂存状态
注意:这些文件的状态会随着我们执行Git的命令发生变化
本地仓库操作
本地仓库常用命令如下:
- git status 查看文件状态
- git add 将文件的修改加入暂存区
- git reset 将暂存区的文件取消暂存或者是切换到指定版本
- git commit 将暂存区的文件修改提交到版本库
- git log 查看日志
远程仓库操作
前面执行的命令操作都是针对的本地仓库,本节我们会学习关于远程仓库的一些操作,具体包括:
- git remote 查看远程仓库
- git remote add <远程仓库别名> <url> 添加远程仓库
- git clone <url> 从远程仓库克隆
- git pull <远程仓库别名> <远程分支名> 从远程仓库拉取
- git push 推送到远程仓库
# 查看远程仓库的详细信息(包括URL)
git remote -v
分支操作
分支是Git 使用过程中非常重要的概念。使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线。同一个仓库可以有多个分支,各个分支相互独立,互不干扰。
通过git init 命令创建本地仓库时默认会创建一个master分支。
本节我们会学习关于分支的相关命令,具体如下:
#查看分支
git branch
#创建分支
git branch 「name]
#切换分支
git checkout 「name]
#推送至远程仓库分支
git push[shortName][name]
#合并分支
git merge name
#删除分支
git branch -d [mme]
标签操作
Git 中的标签,指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。比较有代表性的是人们会使用这个功能来标记发布结点(v1.8、v1.2等)。
#列出已有的标签
git tag
#创建标签
git tag [name]
#将标签推送至远程仓库
git push [shortName] [name]
#检出标签
git checkout -b [branch] [name]
IDEA集成操作
配置本地仓库: 点创建Git仓库之后选择Git仓库地址
拉取, 提交, 推送操作
连接远程仓库: 点管理远程,之后添加远程仓库(填地址)
分支操作: 新建分支
冲突解决
两个用户对同一个文件的同一行代码进行操作时提交就会出现冲突, 先提交的没问题, 后提交就会冲突, 此时双击文件就能看到三个版本的代码, 最左边是后提交的代码, 中间是最初的代码, 右边是先提交的代码冲突的代码会被标注点双箭头是使用对应代码另一个点×就是忽略另一个版本的代码最后点Apply就行