Git分布式版本控制工具
一、Git是什么?
git是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。Git是Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
二、Git安装与基本配置
1.Git下载地址: https://git-scm.com/download
**安装:傻瓜式安装,一直next即可**
2.读入数据
右键显示Git GUI Here 和 Git Bash Here即成功
Git GUI:Git提供的图形界面工具
Git Bash:Git提供的命令行工具总结
3.基本配置
打开Git Bash
git config --global user.name “master” //配置Git用户名
git config --global user.email “123@123.com” //配置Git邮箱
查看配置信息
git config --global user.name
git config --global user.email
三、Git设置本地仓库
1、创建一个空目录,作为本地Git仓库
2、进入目录,右键打开Git bash窗口
3、执行命令
git init
目录中出现.git隐藏文件,说明执行成功。
四、Git基本命令
1、基础命令
1、查看当前目录详细信息
ls/ll
2、查看文件内容
cat +文件名
3、创建文件
touch +文件名
4、vim编辑器,编辑文本
vim +文件名
5、显示当前位置
pwd
6、返回上一级菜单
cd ..
2、常用git操作命令
1、查看的修改的状态(暂存区、工作区)
git status
2、添加工作区一个或多个文件的修改到暂存区
git add . //.通配符表示所有文件
git add 文件名 //指定某个文件
3、提交暂存区内容到本地仓库的当前分支
git commit -m '注释内容' //''引号内的内容自定义
4、查看日志
git -log
git log [option]
options
--all 显示所有分支
--pretty=oneline 将提交信息显示为一行
--abbrev-commit 使得输出的commitId更简短
--graph 以图的形式显示
注:查看日志命令较为常用可以自定义别名
eg:
touch .bashrc
vim .bashrc
添加如下内容:直接复制
#1、用于输出git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
#2、用于输出当前目录所有文件及基本信息
alias ll='ls -al'
:wq
esc键加:wq
w:表示保存 q:表示退出
source .bashrc
执行该文件后就可以用
git-log
ll
命令了
5、版本切换
git reset --hard commitID
6、查看已经删除的记录
git reflog
五、分支(可以理解为用户,每个分支就是一个用户)
1、查看本地分支
git branch
2、创建本地分支
git branch 分支名
3、切换分支
git checkout 分支名
git checkout -b 分支名 //切换到一个分支不存在时创建并切换
4、合并分支
一个分支上的提交可以合并到另一个分支,前提是checkout主分支上,
git merge 分支名称 /
5、删除分支
不能删除当前分支,只能删除其他分支
git branch -d b1 删除分支时,需要做各种检查
git branch -D b1 不做任何检查,强制删除
6、解决冲突
当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突,解决冲突步骤如下:
- 处理文件中冲突的地方
- 将解决完冲突的文件加入暂存区(add)
- 提交到仓库(commit)
六、创建Git远程仓库
常用的有GitHub、码云、GitLab等
以码云为例,
1、注册码云
地址: https://gitee.com/signup
2、新建仓库
①
②自定义仓库名称和路径,选择开源或者私有后直接创建
③显示仓库地址
3、配置SSH公钥
生成SSH公钥
ssh-keygen -t rsa //不断回车就行
如果公钥已经存在,则自动覆盖
Gitee设置账户共公钥
查看公钥
cat ~/.ssh/id_rsa.pub
将公钥选中(在Git中选中即是复制,鼠标中键就是粘贴)
4、gitee验证SSH公钥
命令行输入
ssh -T git@gitee.com
显示successfully说明配置成功
七、Git操作远程仓库
1、先初始化本地库,然后与已创建的远程库进行对接
git remote add <远端名称> <仓库路径>
远端名称,默认是origin,取决于远端服务器设置
仓库路径,从远端服务器获取此URL
例如: git remote add origin git@gitee.com:***/***.git
git@gitee.com:***/***.git 指的是仓库路径地址
注意:运行此命令时,需要在本地仓库内运行,就是说本地需要有.git文件,不然不成功
直接复制SSH仓库路径地址
2、查看远程仓库
git remote
3、推送到远程仓库
git push [-f表示强覆盖,不建议小白使用]
[--set-upstream表示推送到远端的同时并且建立起和远端分支的关联关系]
[远端名称 [本地分支名][:远端分支名] ]
git push origin master
//如果远程分支名和本地分支名称相同,则可以只写本地分支
git push --set-upstream origin master
//如果当前分支已经和远端分支关联,则可以省略分支名和远端名。
上面命令执行成功后,在gitee仓库即可看到内容。
4、查看关联关系
git branch -vv
5、从远程仓库克隆
创建号一个远端仓库,我们就可以直接clone到本地。
git clone <仓库路径> [本地目录]
本地目录可以省略,会自动生成一个目录
6、从远程仓库中抓取和拉取
抓取命令:
git fetch [remote name] [branch name]
抓取指令就是将仓库里的更新都抓取到本地,不会进行合并
远程分支和本地的分支一样,我们可以进行merge操作,只是需要先把远端仓库里的更新都下载到本
地,再进行操作。
如果不指定远端名称和分支名,则抓取所有分支。
拉取 命令:
git pull [remote name] [branch name]
拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch+merge
如果不指定远端名称和分支名,则抓取所有并更新当前分支。
八、在IDEA中操作Git
设置git的文件目录,点击测试,出现版本号说明成功。