1.Git基本概念
1.git三区
工作区 -->git add 暂存区 --> git commit版本区域
暂存区用来存放临时文件,相当于只编辑没有保存
2.文件状态
命令
git status
查看文件状态大体来说有
被版本管理
和没被版本管理
两种状态
- a.txt 执行了
git add
3.git本地仓库命令
-
git reset
①将暂存区文件取消
②回退到指定版本
git reset --hard 版本号
-
git commit -m 版本名 文件名
提交到版本库管理
文件状态变为
unmodified
提交后
a.txt
变为版本管理修改文件之后,状态变为
modified
,需要先将文件放到暂存区
,再提交 -
git log
查看版本修改信息,即commit信息
git远程仓库
-
git remote
查看远程仓库状态①如果在这个目录下,执行这个命令有信息,那么
关联了远程仓库
②已有本地仓库关联远程仓库
git remote add 名字 远程库url
-
git clone
-
git push 远程仓库名 分支名
远程仓库名为
git remote
命令查看的仓库别名
**提交流程:**①提交文件到本地仓库②push 到远程仓库
提交报错解决链接
git init //初始化仓库 git add .(文件name) //添加文件到本地暂存 git commit -m “first commit” //添加文件描述信息 git remote add origin 远程仓库地址 //链接远程仓库 git push -u origin master //把本地仓库的文件推送到远程仓master 分支
注意问题
:必须是仓库的成员,那么才可以push到这个仓库。 -
git pull 仓库名 分支名
-
这个命令用于对克隆的仓库的更新
-
本地仓库关联远程仓库再拉取失败的原因:
两者文件历史完全不同,合并有冲突,因此不合并。解决方法:允许拉取的时候
远程仓库的历史
完全取代
本地仓库的历史
-
5.分支操作
-
git branch
查看分支 -
git branch 名字
创建分支 -
git checkout 名字
切换分支 -
git push 仓库名 分支名
推送分支及其下的内容 -
git merge 分支名
合并分支
分支作用总结
创建不同的分支,不同的分支下(版本)下有不同的文件,便于多人开发
所以push命令的时候不仅要指明
远程仓库
,还要指明push到哪个分支
切换不同分支的时候,本地仓库
显示内容
不同
合并产生问题
问题出现:在不同的分支下对
同一份文件
进行了修改并进行了提交,合并到某一分支如master
分支,就会出现问题处理方法:git会将两份同一文件修改的信息都反馈给当前处理分支的文件,然后自己
手动处理
保存后,再保存本地提交(需要加上-i参数,告诉git已经处理好冲突),再推送到远程。
6.标签操作
快照,记录
版本结点
-
git tag
查看标签 -
git tag 名字
创建标签 -
git push 远程仓库名 标签名
,与分支操作区别开来 -
git checkout -分支名 -标签名
检出标签并创建新的分支保存
分支与标签的区别
分支相当于
开发的不同的路线
,可以在这个分支上持续的开发
外链图片转存中…(img-hCXzZNGy-1685106973378)]
-
git checkout -分支名 -标签名
检出标签并创建新的分支保存[外链图片转存中…(img-XFKnrNlf-1685106973379)]
分支与标签的区别
分支相当于
开发的不同的路线
,可以在这个分支上持续的开发标签相当于一个
存档
,即项目开发到一定阶段之后,保存当前项目(包括所有分支)的一个信息,日后可以回退到这个版本
继续开发