GIT 分布式版本控制工具
-
定义
代码托管中心gitee(国内)、github(国外)、gitlab(局域网),分布式协同开发(远程代码管理仓库)
-
下载地址
git下载地址:https://git-scm.com/
1 - 本地仓库
工作区 -> git add .(提交到暂存区*)-> git commit -m “备注内容”(提交到本地仓库)*
1-1 初始化设置
首次安装完git,必须配置好用户签名与邮箱(后期用于作为代码修改者提醒),否则无法提交代码
跟设置gitee账号没关系
-
设置用户签名与邮箱(初始化时设置)
git config --global user.name "xiaoche"
git config --global user.email "myemail@163.com"
-
查看用户签名与邮箱
git config user.name
git config user.email
1-2 基础用法
- 初始化git仓库
git init
- 查看本地仓库状态
git status
- 添加暂存区
git add .
- 删除暂存区
git rm --cached 文件名
- 提交本地仓库(必须备注)
git commit -am “备注内容”
git commit -m "msg"
1-3 版本查询
★可以根据版本号回滚(reset)
版本列表以栈的形式存储,head代表栈顶指针,指向当前版本号
- 查看版本提交历史信息
git reflog
- 查看详细的版本提交历史信息(查看详细日志信息)
git log
- 版本回滚
以版本号为准,不管处于哪个分支都会回滚到哪个版本,即时是其他分支的提交版本,也归属当前分支
git reset --hard 版本号
1-4 分支管理
- 建立分支
git branch 分支名
- 切换分支
git checkout 分支名
- 删除分支
git branch -D 分支名
- 合并分支
git merge 源分支名
1-5 远程连接仓库
- 本地与远程仓库建立桥梁
git remote add origin https://gitee.com/xehan/tst.git
2 - 远程仓库
2-1 远程仓库HTTPS
业务场景:已建立本地仓库的情况下
- https方式连接远程仓库(每次push/pull需要输入账号密码)
git remote add origin https://gitee.com/xehan/tst.git
- pull(拉下数据)
#一般形式
git pull origin 分支名
- push(上传数据)
#一般形式
git push origin 分支名
#提供默认形式
git push -u origin 分支名
2-2 远程仓库SSH
业务场景:未建立本地仓库的情况下(使用clone)
ssh方式连接远程仓库(每次push/pull无需输入账号密码)
-
建立部署公钥
只能读取,无法写入,若需要写入需要建立个人公钥
-
建立个人公钥
可读可写
- 拉取代码(前提:远程仓库已保存本机公钥)
git clone git@gitee.com:xean/git-exeise.git
3 - 真实项目实操
3-1 实操HTTPS协同开发(可选)
#以HTTPS建立以远程仓库的连接
git remote add origin https://gitee.com/xehan/tst.git
#查看是否连接成功
git remote
#拉取代码
git pull origin master
#建立分支(简洁形式:git checkout -b mydev 切换的同时建立该分支)
git branch mydev
#切换分支
git checkout mydev
#开发一系列模块的代码(简洁形式:git commit -am "备注内容")
#添加到仓库暂存区
git add .
#提交到本地仓库
git commit -m "备注内容"
#切换到主分支
git checkout master
#再次拉取远程仓库的代码(目的是防止覆盖其他协同者的代码)
git pull origin master
#合并分支
git merge mydev
#发送到远程仓库(简洁形式:git push,需配置默认-u参数指向指定远程仓库名 只会默认指定原本分支,不影响其他分支)
#git push -u origin master/自定义分支
git push origin master
3-2 实操SSH协同开发(必须掌握)
#以公钥建立以远程仓库的连接
git clone git@gitee.com:xean/git-exeise.git
#拉取代码
git pull
#建立分支(简洁形式:git checkout -b mydev 切换的同时建立该分支)
git branch mydev
#切换分支
git checkout mydev
#开发一系列模块的代码(简洁形式:git commit -am "备注内容")
#添加到仓库暂存区
git add .
#提交到本地仓库
git commit -m "备注内容"
#切换到主分支
git checkout master
#再次拉取远程仓库的代码(目的是防止覆盖其他协同者的代码)
git pull
#合并分支(如何解决合并冲突要熟悉)
git merge mydev
#发送到远程仓库
git push