Git学习
先去官网下载git,小技(不管所有东西如果下载很慢,可以通过镜像去下载)
像linux基本命令已经会了,我们来学几个新的命令
git config -l 查看所有配置 (-l 代表list 清单)
git config --system --list 查看系统配置
git config --global --list 查看本地系统配置,
像user.name 或者user.email都是必须要配置的
***所有的配置文件其实都保存在本地
在Linux下所有的配置文件都放在etc里面
其实这些都是一些文件罢了
git必要配置
环境变量其实只是为了全局使用而已
git config --global user.name "自己的用户名" // 配置用户名
git config --global user.emails "我们自己的邮箱" //配置邮箱
git工作原理(核心)
本地仓库搭建
git init 初始化文件 会在当前文件夹中显示一个.git文件
记得 git文件有些是属于隐藏文件,要在这里打开
Git常用命令
版本库:
我们看到创建的.git隐藏文件夹就是版本库,版本库存储的是配置信息,日志和文件版本信息等
工作区:
包含.git的文件夹的目录就是工作区,主要存放开发用的代码
暂存区:
.git文件夹中有很多文件,其中的index文件就是暂存区,也可以叫做stage。暂存区是一个临时保存修改文件的地方
Git工作区中文件存在两种的状态:
untracked 未跟踪(没有被纳入版本控制)
tracked 已跟踪(被纳入版本控制)
1:Unmodified 未修改状态
2:Modified 已修改状态
3:Staged 已暂存状态
***文件的状态会随着我们执行Git命令发生变化
在工作区使用 git status来查看状态
本地仓库常用命令:
git status 查看用户状态
git add 将文件的修改加入缓存区
git reset 将暂存区的文件取消暂存或者是切换到指定版本
git commit 将暂存区的文件提交到版本库
git log 查看日志
将暂存区的内容提交到本地版本库的当前分支
git commit -m "注释内容"
本机中先把user.java添加到缓存区,再使用命令 git commit -m "init test" user.java
-m是对本次提交的说明
原本我们的user.java是一个空文件,写了几句代码,我们重新提交,这样我们版本有两个
我们可以返回到之前的版本
远程仓库常用命令
git remote 查看远程仓库
git remote add 添加远程仓库
git clone 从远程仓库克隆
git push 推送到远程仓库
git pull 从远程仓库拉取
演示:gitee上面的仓库叫git-study,这个目录就是clone而来的,两个仓库之间已经有了联系
如果两个仓库没有联系,可以添加联系
git remote add <远程仓库别名> <url>
推送到远程仓库 git push [remote-name] [branch-name]
我们新建一个仓库,先克隆我gitee上面的仓库,然后添加新文件-->加入缓存区-->提交版本库-->推送到远程仓库
第一次在进行推送时候是需要身份验证的,输入用户名和密码 (本仓库成员才可以推送)
从远程仓库拉取到本地仓库 git pull short-name
注意:如果是自己本地创建的仓库,而且仓库里面有文件,和要拉取的远程仓库没有联系,拉取文件时候会报错,
解决方法:在git pull 命令后面添加参数 --allow-unrelated-histories 然后弹出窗口,退出就行了
分支操作
同一个仓库可以有多个分支,各个分支相互独立,互不干扰。通过git init命令创建本地仓库时会默认创建一个master分支
git branch 查看分支
git branch [name] 创建分支
git checkout[name] 切换分支
git push [shortname] [name] 推送至远程仓库分支
git merge [name] 合并分支
1:git branch -r 列出所有远程分支
git branch -a 列出所有本地分支和远程分支
标签操作
Git中的标签指的就是某个分支某个特定时间点的状态,通过标签,可以方便切换到当时的状态。
git tag 列出已有的标签
git tag [name] 创建标签
git push [shortname] [name] 将标签推送到远程仓库
git checkout -b [branch] [name] 检出标签
在IDEA中使用Git
1-设置路径
2-获取git仓库
-
本地初始化仓库 --(一般选择项目名字就行,相当于在此目录下初始化一个本地仓库)
-
从远程仓库克隆
一开始没有版本控制,可以这么设置一下 就是把远程的仓库里面内容都克隆到IDEA新项目中了
从右上角的按钮来操作更方便提交和拉取。
从右下角来进行分支的管理