git的用法
git是一个分布式的版本控制工具
-
分布式:在网络互不影响,独立操作
例如: git -
集中式:有一个中心服务器来连接这些设备
例如:SVN
git的使用方法:
安装git客服端(windows,mac…)
https://gitforwindows.org/
git常用命令
-
初始化git:git init
-
查看当前git文件状态
-
添加文件到暂存区: git add 文件名1
-
提交到本地仓库:git commit -m ‘版本说明’
-
添加可忽略文件: .gitignore
-
提交到远程仓库
(1)git远程仓库(也称代码托管平台):github,码云,gitLab
(2)提交远程的步骤:
第一步:创建一个远程仓库,点击登录后右上角的+,按步骤完成即可
注意:远程要定要配置好公钥/密钥
ssh-keygen -t ed25519 -C “你的邮箱名@126.com”
密钥:id_rsa
公钥:id_rsa.pub测试是否连接成功:ssh -T git@github.com 第二步:配置要连接的远程仓库 格式:git remote add origin 远程仓库地址 第三步:再推送到远程 git push origin 本地分支名:远程分支名 例如:git push origin master:main git push origin 本地分支名 例如:git push origin master
如果远程拒绝推送本地文件,则应该先将远程文件拉取本地,然后再推送远程
拉取
//从远程拉取到本地,并跟本地分支自动合并
git pull origin 远程分支名:本地分支名
如果不能git pull,解决方案:
第一步:只拉取到本地,不合并分支
git fetch origin main:master
第二步:关联远程main分支到本地master分支
git branch --set-upstream-to=origin/main master
第三步:然后在使用git pull加拉取
git pull --allow-unrelated histories
其中:allow-unrelated-histories代表允许不相关的历史记录
一、历史回退
- 查看提交历史记录
//详细查看
git log
//缩略查看
git log --pretty=oneline
//查看所有的提交commit_id
git reflog --pretty=oneline
- 回退到过去或现在
//回退到过去
git reset --hard commit_id
二、分支管理
- 分支的作用
方便团队之间的协作开发,分支之间的代码互不影响
git init 初始化完后,默认本地只有一个分支master
2.项目分支结构
master:主分支,这个分支上不做项目开发,用于发布产品的分支
dev:开发分支
hotfix:调度bug的分支
feature:开发新功能的功能
成员分支:例如:姓名_功能
3.分支常用命令
1. 查看分支:git branch
例如:main
*master //分支前带*,当前要操作的分支
2.创建分支:git branch 新分支名
3.切换分支:git checkout 要切换的分支名
4.自动创建并分支:git checkout -b 要创建和切换的分支
5.合并分支:git merge 要合并的分支
注意:如果多人修改同一个文件,出现冲突,先解决冲突(采用当前的,采用传入,两者都保留),再add,commit
6.分支提交到远程
git push origin 要提交的分支名
7.删除分支
(1)删除已经合并过的分支
git branch -d 要删除的分支名
(2)删除未被合并的分支
git branch -D 要删除的分支名
(3)删除远程分支
git push origin :要删除的分支名
三、克隆(clone)仓库
git clone 远程仓库地址
例如:git clone git@github.com:vuejs/vue.git
四、团队协作
第一步:组长先克隆远程仓库
git clone 组长给的仓库地址
第二步:组长克隆完进入仓库文件夹、写公共代码,再add,commit,最后push到刚才的仓库上
第三步:组长将组员添加到《仓库成员管理》中,注意:权限用开发者权限
第四步:组员第一次克隆组长仓库,然后在本地创建好dev和自己名称的分支
第五步:组员切换到自己名称的分支上,然后编写自己负责的代码,再git push origin 自己分支名到远程仓库
第六步:另一个组员操作同上面的组员,只不过如果需要上面组员的代码,必须将那个组员分支git pull 自己的分支下
五、git可视化操作
git bash 命令行操作
git GUI 可视化操作,或称图形图面操作
六、打版本(了解)
查看版本
git tag
打版本
git tag 版本号
删除版本:
本地删除:git tag -d 版本名
远程删除:git tag :要删除的版本名
推送版本:git push origin 版本名
版本号格式:vxx.xx.xx