git常用操作
时间:2023年10月30日
08:50:21
前置:git配置
-
首先运行
Git
,第一次运行Git
需要设置用户信息 -
配置全局用户
-
配置全局用户-即你在
git
提交的用户名(用于识别用户-无其他意义) -
#设置提交的用户 git config --global user.name "XXX" #设置提交的邮箱 git config --global user.email "XX.@XX.com"
-
注意:这个并非是
git
代码仓库的用户和邮箱,只做开发的识别使用
-
-
查看当前的全局配置
-
git config --global --list
-
-
配置ssh(可选)
-
git
设置ssh key
有什么用? -
git设置ssh key的主要作用之一是实现无密码登录。通过生成公钥和私钥,可以将公钥添加到git服务器上,从而实现在每次进行git操作时无需输入密码。这样可以大大提高操作效率,减少繁琐的密码输入过程 比如在自动化部署的时候,用的较多
-
如何配置?
-
先生成SSH公钥,以
gitee
为示例-
先进入
git bash
控制台 -
# 查看是否生成过秘钥 cd ~/.ssh # 出现如下 -- No such file or directory,则说明没有生成过秘钥 bash: cd: /c/Users/19839/.ssh: No such file or directory
-
# 创建ssh公钥 ssh-keygen -t rsa -C “1983935369@qq.com”
-
-
连续
enter
三次即可 -
# 查看公钥内容 cat ~/.ssh/id_rsa.pub
-
-
在
gitee
中添加公钥
-
-
-
1
1. git基本指令详情
-
git
的基本指令详情 -
拉取代码仓库
-
# 拉取远程仓库 git clone XXX.git # 查看分支 git branch -a
-
注意如果在上面添加了ssh的话,可以使用ssh下载方式
- 1
-
1
-
-
git代码上传小技巧
-
在远程
git
仓库创建一个代码分支,并且初始化 -
git clone xx
在本地创建目录拉取了远程仓库 -
将代码复制到当前目录下
-
将代码上传到远程仓库
-
使用
idea
打开目录,并且commint + push
-
使用
git bash
-
# 拉取代码仓库 git clone xxx.git # 添加复制过来的文件,当前目录下所有文件,传到暂存区 git add . # 添加解释 git commit -m "<message>" # 显示远程仓库 git remote -- origin # 推送到远程仓库 git push origin master
-
如果是第一次上传,会要求输入账号和密码,此处我已经添加了ssh就无需再进行用户验证
-
再到远程仓库查看,此刻就有要上传的文件了
-
1
-
-
-
2. git在idea中如何使用
-
基本操作
-
直接使用
idea
拉取远程仓库代码 -
-
idea
可视化的git
常用指令- 拉取代码= 代码更新,更新当前分支的最新代码
- 提交到本地库(
commit
)- 每次有一个小功能的变动可以先
commit
,然后加注释解释
- 每次有一个小功能的变动可以先
- 推送到远程库(
push
)- 将多次的
commit
一并提交到远程仓库
- 将多次的
- 查看历史信息,可以查看分支的提交信息
-
3 .如何合并merge
比如将
dev
分支合并到master
分支
-
先将
dev
分支commit
提交至缓存,不然直接切换也会提示未提交,然后push
提交到远程仓库 -
-
-
checkout + update
- 切换分支使用
checkout
,并且将两个分支保存为最新update
- 切换分支使用
-
切换到你要合并的分支-此时我们要将
dev
分支推送到master
分支上,那么此时切换到master
分支上即可- 有提示分支切换冲突,是因为没有将所有的分支改动给提交,刚刚只提交了一部分
-
然后直接
merge
-
最后将
master
分支push
即可
4. merge
中产生了冲突怎么办?
合并过程中有多人对此代码进行了修改,就会产生合并冲突
- 在
merge
合并过程中多人对此代码进行了修改 - 此页面可以看到,三种选项,要不接受自己最近修改的
Accept Yours
,要不接受之前的其他人的Accept Theirs
,或者merge
- 大多情况下,既不接受自己的,也不接收其他人的,我们要
Merge
- 可以看到图片此刻我们有一个冲突待解决,idea在询问此刻到底保留谁的
- 讲解
Accept Left:
选这个按钮代表全盘接受左边(舍弃我们的改动)Accept Right:
选这个按钮代表全屏接收右边(保留目前分支的改动)- 中间是最终分支的样式图
- 冲突解决完成可以
merge
会有提示 - 这是冲突没有解决完,比如冲突较多,有个别的没有解决就
apply
的时候,会弹出提示框,此刻我们继续continue
5. 小技巧
- 要想了解和熟悉原生的
git
原生指令,可以在idea
中可视化操作之后,查看控制台