【人见人爱报错系列】GIt常见问题解决大全

news2024/11/22 20:43:55

前言

在使用的github\gitlab各种hub的过程中,会遇到各种各样的小问题,这些会给程序员们带来五光十色的烦恼,本文总结使用git的各种问题并持续更新。
在这里插入图片描述

一、Git用户名邮箱设置

使用git过程中,会切换不同项目但是发现提交人都是一样的,怎么针对不同项目设置不同的提交人和邮箱呢?

//查看用户名
git config user.name
git config user.email

全局设置

//修改用户名
git config --global user.name "Your_username"
//修改邮箱
git config --global user.email "Your_email"

项目设置

GIT针对不同项目设置不同提交人及邮箱

1、进入项目根目录。

2、进入 .git 文件夹

3、编辑 config 文件,在最后添加以下内容:

    name = 提交人名称
    email = 邮箱 ```

二、删除历史提交记录

以master分支为例,若开启保护分支需关闭。复制master,删除原有分支,用新的分支覆盖旧分支。从而完成分支替换,删除历史记录。

注:谨慎操作,按以上操作后无法回滚。

1、本地仓库checkout检出新分支,参数orphan:没有commit记录的分支
git checkout --orphan bakmaster

2、添加分支所有文件

git add -A

3、将添加的文件提交到本地仓库

git commit -am "commit description"

4、删除之前的主分支

git branch -D master

5、重命名检出的新分支为master,使他成为主分支

git branch -m master

6、强制提交覆盖掉远程仓库的分支

git push -f origin master

7、查看日志

git log

三、错误push后,回退提交

1、回滚

git reset --hard commit -id #commit -id是git log中得到的提交id。

2、强制推送

git push origin HEAD --force

需要注意的是,这个提交会将远程仓库强制覆盖,请谨慎使用。

四、.gitignore忽略文件修改不起作用

因为ignore文件中新增的忽略文件在之前的版本中已经提交至远程库。解决办法就是要删除忽略文件在本地的git缓存,再提交至远程库,如下

# 删除本地缓存
git rm -r --cached xxx.file
# 忽略
git commit -m ``"ignore"
# 提交远程
git push

五、Git 使用tag相关命令操作

tag简介

tag主要用于发布版本的管理,一个版本发布之后,我们可以为git打上 v.1.0.1 v.1.0.2 …这样的标签。

tag与branch区别:

tag标记 指向某个commit的指针。branch分支 对应一系列commit,通过HEAD 指针移动。

tag使用场景:

如果已经发布了 v1.0 v2.0 v3.0 三个版本。需要在 v2.0 的基础上功能修改或新增等操作,作为 v4.0发布。就可以使用tag检出 v2.0 的代码作为一个 branch 进行开发。

tag使用

创建本地
tag git tag xxx
创建时增加附注
git tag -a v1.0 -m "release 1.0 version"

推送远程

git push origin xxx

查看本地某个tag的详细信息

git show xxx

查看本地所有tag

git tag 或者 git tag -l

查看远程所有tag

git ls-remote --tags origin

删除tag名xxx

git tag -d xxx

将删除的tag名xxx推送至远端

git push origin :refs/tags/xxx

检出tag

git checkout -b

六、远程仓库地址改变操作

git remote set-url origin http://xxx.git

七、Git pull\push\merge踩坑报错

命令简介

在这里插入图片描述

git merge

用于将两个或两个以上的开发历史加入(合并)一起。

git fetch

从远程获取最新版本到本地,不会merge(合并)。

# 语法:git fetch <远程主机名>。

git fetch orgin master

git pull

从远程获取最新版本并merge(合并)到本地。

# 语法:git pull <远程主机名><远程分支名>:<本地分支名>。
git pull origin master:master

git reset

将当前的分支重新设置到指定的commit id或者HEAD。

语法:git reset [- -hard|soft|mixed|merge|keep][<commit id>或HEAD]

HEAD是默认路径。hard、soft、mixed、merge、keep是设置的模式。通常回滚代码时,使用- -hard,表示自commit id以来,工作目录中的任何改变都被丢弃,并把HEAD指向commit id。

连接报错系列

fatal: unable to access ‘https://github.com/xxx.git/’: Failed to connect to github.com port 443: Timed out
git push或者pull的时候报以上错误解决方式:

git config --global http.sslVerify "false"

fatal: unable to access ‘https://github.com/xxx.git/’: OpenSSL SSL_connect: Connection was reset in connection to github.com:443解决:

git config --global http.sslBackend "openssl"
git config --global http.sslCAInfo "C:\Program Files\Git\mingw64\ssl\cert.pem" #git安装的路径

OpenSSL SSL_read: Connection was aborted, errno 10053 Failed to connect to github.com port 443 after 21096 ms: Timed out解决:

git config --global http.postBuffer 524288000
git config --global http.sslVerify "false"

冲突报错系列

Git Pull Failed
error: You have not concluded your merge (MERGE_HEAD exists).
fatal: Exiting because of unfinished merge.

Git Merge Failed
fatal: You have not concluded your merge (MERGE_HEAD exists).

Git Pull Failed
Your local changes would be overwritten by merge.
Commit, stash or revert them to proceed. View them

先备份代码在进行如下操作:
方法一:舍弃本地代码

远程版本覆盖本地版本

git fetch --all

git reset --hard origin/master

git pull

方法二:保留本地代码

中止合并–>重新合并–>重新拉取

git merge --abort

git reset --merge

git pull

同一分支历史提交记录不同报错

git pull 时报错:
fatal refusing to merge unrelated histories

# 强行合并
git pull origin master --allow-unrelated-histories 
# 提交远程
git push

push未设置关联远程分支报错

使用git push 报如下错误:
fatal: The current branch master has no upstream branch
解决
方式一:

# 根据需要替换分支名
git push --set-upstream origin master

方式二:

# 根据需要替换分支名 远程分支master不存在会创建
git push -u origin master

git路径含空格报错

error: cannot spawn git: No such file or directory fatal: unable to fork
Git Bash能正常使用git命令,idea使用命令报错。
解决:

调整路径去掉空格
C:\Program Files\Git\bin\git.exe
如修改成:
C:\idea\Git\bin\git.exe

八、git上传jar包

打开项目下.gitgnore文件,删除*.jar即可上传。其它格式文件同理

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/14599.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

M1 芯片 MacBook 结合 MAMP 集成环境配置 PHP 环境变量

MacOS Catalina 版本之后 shell 改为使用 zsh 。 可以使用 echo $SHELL 命令查看。 配置文件分为系统级&#xff08;所有用户生效&#xff09;和用户级&#xff08;当前登录用户生效&#xff09;&#xff0c;可以自行了解&#xff0c;一般不经常切换用户的话&#xff0c;用户…

【Java多数据源实现教程】实现动态数据源、多数据源切换方式

前言 本文为 【Java多数据源实现教程】 相关知识&#xff0c;由于自己最近在做导师的项目的时候需要使用这种技术&#xff0c;于是自学了相关技术原理与实现&#xff0c;并将其整理如下&#xff0c;具体包含&#xff1a;多数据源的典型使用场景&#xff08;包含业务复杂场景、读…

JavaWeb:JavaWeb技术架构演进

Java Web&#xff0c;是用 Java 技术来解决相关web互联网领域的技术栈。web 包括&#xff1a;web 服务端和 web 客户端两部分。Java 在客户端的应用有 Java Applet&#xff0c;不过使用得很少&#xff0c;Java 在服务器端的应用非常的丰富&#xff0c;比如 Servlet&#xff0c;…

【MySQL数据库笔记 - 进阶篇】(四)视图/存储过程/触发器

✍个人博客&#xff1a;https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 &#x1f4da;专栏地址&#xff1a;暂定 &#x1f4dd;视频地址&#xff1a;黑马程序员 MySQL数据库入门到精通 &#x1f4e3;专栏定位&#xff1a;这个专栏我将会整理 B 站黑马程序员的 MySQL…

将多张图片制作gif

如何将多张图片制作gif&#xff1f;gif其实也是一种比较常见的图片格式&#xff0c;不过gif和其它图片有很大区别&#xff0c;gif是一种动态图片&#xff0c;相信很多小伙伴都知道。我们每天几乎也会看到或者使用到gif动图&#xff0c;有些gif动图是由几张静态的普通图片合并而…

深入理解java虚拟机-1.自动内存管理

文章目录1、自动内存管理1.1 Java内存区域与内存溢出异常1.1.1 运行时数据区域程序计数器程序计数器为什么是私有的?java虚拟机栈本地方法栈虚拟机栈和本地方法栈为什么是私有的?Java堆创建的对象一定会放在堆中吗&#xff1f;方法区运行时常量池直接内存1.1.2 HotSpot虚拟机…

渗透测试之信息收集

信息收集1.域名信息收集1.1.whois查询1.1.1.whois解释1.1.2.whois收集  1.1.2.1.在线网站查询  1.1.2.2.工具查询1.2.反查1.3.备案信息查询1.3.1.备案信息收集1.4.子域名收集1.4.1.子域名解释1.4.2.子域名收集  1.4.2.1.在线网站收集  1.4.2.2.工具收集  1.4.2.3.Goo…

【教学类-13-03】20221118《数字色块图5*7*8-A4横板-横切》(大班主题《》)

效果展示&#xff08;一张8个图&#xff0c;对半横切&#xff08; 打印效果图、中间剪开成2分&#xff08;白色废纸&#xff09; 背景需求&#xff1a; 前期中3班制作5*7 *9张数字图&#xff0c;幼儿找出数字的人数更多 我还希望在大班进行数字图涂色练习。为了增加难度&#…

Wireshark TS | 访问网页失败

前言 访问网页失败也是日常比较常见的问题之一&#xff0c;导致问题的原因可能有很多种&#xff0c;像是客户端、浏览器、服务器或者网络等等&#xff0c;自然具体问题得具体分析。本篇以一个实际案例来说明下 TCP 连接相关的问题&#xff0c;该数据包仍然来自于 Wireshark sh…

视频m4v怎么转换成mp4?

在平时我们所使用的视频格式中除了常见的mp4&#xff0c;还有几十种不同的格式种类&#xff0c;不同的视频格式适用不同的播放设备&#xff0c;同时在画质&#xff0c;体积&#xff0c;编码&#xff0c;兼容性等方面都各具特色有所区别。其中m4v格式的视频就是适用于苹果系统的…

这波服装设计作品对女性美的诠释,十分到位

女性是温柔的、美丽的&#xff0c;多样的&#xff0c;莱佛士学生Xu Xinyi作品《Femininity&Softness》便是围绕女性展开创作。而Xinyi的作品想要传达的是&#xff1a;女性不应该被物化&#xff0c;她们是美丽且具有多样性的。 莱佛士服装设计专业学生作品在设计中&#xff…

海外直播公会Tik Tok,蓝海项目官方火热招募中

时过境迁&#xff0c;国内营销越来越成熟&#xff0c;国内公会(MCN机构)开始出现严重内卷。2022年国内公会/MCN公司已有40000多家;国内公会发展成熟&#xff0c;头部主播形成市场垄断;主播招墓难;孵化主播成本高。找她&#xff08;HS3873&#xff09;快速拿官方后台 有多少国内…

最短路径条数

在一个m行n列的网格中&#xff0c;每个网格的各边的长度均相等&#xff0c;求由A(x1,y1)点到达B(x2,y2)点的最短路径条数&#xff0c;其中1<m,n<30。输入保证x2>x1,y2>y1 如有下图网格&#xff0c;起点和终点分别是A(1,1),B&#xff08;2&#xff0c;3&#xff09;…

MySQL8.0优化 - 事务的状态

文章目录学习资料事务的状态活动的&#xff08;active&#xff09;部分提交的&#xff08;partially committed&#xff09;失败的&#xff08;failed&#xff09;中止的&#xff08;aborted&#xff09;提交的&#xff08;committed&#xff09;学习资料 【MySQL数据库教程天…

Pandas知识点-读写Excel最全参数总结(收藏)

Pandas知识点-读写Excel最全参数总结&#xff08;收藏&#xff09; pandas文件读写工具汇总 pandas中的文件读写工具由一组read的函数&#xff08;执行Input&#xff09;和一组write的对象方法&#xff08;执行Output&#xff09;组成&#xff0c;具体见下表。 本文总结最常用…

指纹识别系统设计(VC++)

目 录 摘 要 I Abstract II 1绪论 1 1.1选题背景及意义 1 1.2研究现状 2 1.3研究主要内容 2 2技术介绍 3 2.1软件环境 3 2.1.1 C的产生和发展以及特点简介 3 2.1.2 Visual C6.0简介及其优点 5 2.2硬件环境 5 3指纹识别系统需求分析 6 3.1业务需求分析 6 3.2功能需求分析 6 3.3性…

四招教你样式化界面组件KendoReact,让应用程序主题更个性化

Kendo UI致力于新的开发&#xff0c;来满足不断变化的需求&#xff0c;通过React框架的Kendo UI JavaScript封装来支持React Javascript框架。Kendo UI for React能够为客户提供更好的用户体验&#xff0c;并且能够更快地构建更好的应用程序。 开发人员在应用程序主题色的选择…

省重点实验室成果转化:24h在线的专业数字朋友,不用欠人情的网上解答神器~

数据解决大师 一个适合所有人的 数据问题咨询小程序 海量数据如何安全储存&#xff1f; 电脑系统崩溃&#xff0c;关键文档丢失怎么办&#xff1f; 手机被格式化&#xff0c;视频文档等数据如何恢复&#xff1f; 毕业论文遭恶意破坏&#xff0c;如何操作能将损失降至最低&…

Java Final关键字使用

Final关键字 final可以修饰类, 属性, 方法和局部变量 在某些情况下程序员可能有以下需求&#xff0c;就会使用到final: 1)当不希望类被继承时&#xff0c;可以用final修饰. 2)当不希望父类的某个方法被子类覆盖/重写(override)时&#xff0c;可以用final关键字修饰。[访问修饰…

谷粒学院——Day06【整合阿里云OSS、EasyExcel技术实现Excel导入分类】

阿里云存储OSS 一、对象存储OSS 1. 开通“对象存储OSS”服务 阿里云&#xff1a;https://www.aliyun.com/申请阿里云账号实名认证开通“对象存储OSS”服务进入管理控制台 2. 创建Bucket 选择&#xff1a;标准存储、公共读、不开通。 3.上传默认头像 4. 创建RAM子用户 二、…