Git(Ci)
概念
代码版本控制系统
作用
记录代码内容
切换代码版本
合并代码内容
下载配置
1.检验下载
查看版本
git -v
2.配置用户信息
配置用户名
git config --gloal user.name "Cici"
配置用户邮箱
git config --global user.email "2863306781@qq.com"
3.配置检验
查看清单
git config --list
Git仓库
1.概念
记录文件状态内容的地方,存储着修改的历史记录
2.创建
本地文件夹转化成Git仓库
git init
其他服务器上克隆Git仓库
git clone 仓库地址
三个区域
1.工作区(git_study)
实际开发时操作的文件夹
2.暂存区(.git/index)
作用:
暂存改动过的文件
恢复代码内容
与版本库解耦
命令
暂存区代码覆盖工作区
git restore 目标文件路径
//无法撤回移除暂存区文件
git rm-cached 目标文件路径
3.版本库(.git/obiects)
提交并保存暂存区中的内容,产生一个版本快照
命令
查看提交历史
git log --oneline
查看引用日志
git reflog --oneline
回退命令:
git reset --soft 版本号
//保留工作区保留不变
暂存区保留不变
版本库回退
git reset --hard 版本号
//覆盖工作区与版本库同步
暂存区与版本库同步
版本库回退
git reset --mixed 版本号
=git reset 版本号
工作区保留不变
暂存区与版本库同步
版本库回退
4.命令
Git文件状态
1.未跟踪
概念:新文件,从未被Git管理过
2.已跟踪
概念:Git已经知道和管理的文件
3.状态显示
4.查看文件状态
git status -s
第一列:暂存区状态(相对于版本库)
第二列:工作区状态(相对于暂存区)
上传文件
步骤
添加文件到暂存区
添加
git add .
//全部被更改的文件git add 文件路径
//特定文件
检验暂存区
查看当前文件夹下,暂存区内容
git lis-files
提交到本地仓库
git commit -m '描述更改的信息'
提醒
此前的文件删除无法追回
不会清空暂存区
推送到远程仓库
git push origin 分支名
删除文件
步骤
工作区
手动删除工作区文件
暂存区
手动删除暂存区文件
git add 覆盖暂存区
版本库
git commit 覆盖版本库
忽略文件
1.概念
.gitignore文件可以让git 彻底忽略跟踪指定文件
2.目的
避免重复无意义的文件管理
3.相应配置
忽略npm 下载的第三方包
node_modules
忽略分发文件夹
dist
忽略Vscode配置文件
.vscode
忽略密钥文件
*.pem
*.cer
忽略日志文件
*.log
指定文件
文件名
4.创建
项目根目录新建.gitignore文件
输入相应配置来忽略指定文件
分支
1.概念
本质上是指向提交节点的可变指针,默认名字是master
2.场景
开发新需求/修复Bug,保证主线代码随时可用
3.合并删除
合并分支
步骤
切回要合入的分支
git checkout 要合入的分支名
合并分支
git merge 被合并分支名
合并冲突
不同分支,同一文件,同一部分冲突
手动解决
删除分支
git branch -d 要删除分支名
提醒
提交记录顺序按创建分支的先后顺序
4.命令
Git远程仓库
1.概念
托管在网络中的版本库
2.作用
保存版本库历史记录
多人协作
3.创建
步骤
注册三方托管平台账号
新建仓库//得到仓库Git地址
本地Git仓库添加远程仓库原点地址
git remote add 远程仓库别名 远程仓库地址
本地Git仓库推送版本记录到远程仓库
git push -u 远程仓库别名 本地和远程分支名
查看本地仓库中有哪些远程仓库地址
git remote -v
修改已有远程仓库地址
移除远程仓库地址
git remote 远程仓库别名
添加远程仓库地址
git remote add 远程仓库别名 远程仓库地址
提醒
切换Git账号
控制面板>凭据管理器>Windows凭据>删除Git凭据
4.克隆
命令:
git colne 远程仓库地址
提醒:
本地已经建立好与远程仓库的链接
仓库公开随意克隆,推送需为仓库团队成员
协同开发
1.提交步骤
工作区
暂存区
提交版本库
拉取仓库代码
git pull origin 分支名
等同于
git fetch origin 本地分支名:远程分支名
(获取远程记录到本地)+git merge origin/本地分支名
(把记录合并到本地分支下)
git pull --rebase origin 分支名
//强制拉取
推送到远程仓库
git push origin 分支名
部署网页
gitee>服务