商务服务
Git _ 报错信息
2024-11-17 20:08

目录

Git _ 报错信息

VSCode 内 GitLens 不生效 

git 新建分支 并 切换到该分支

远程分支被删除后如何同步本地代码到新的远程分支上

( 1 ) => 通过 Git 把工作区的内容 add 添加到暂存区 的时候 , 报了 警告 :

warning: LF will be replaced by CRLF in XXXX.The file will have its original line endings in your working directory​编辑

( 2 ) => 通过 Git 本地仓库 push 到远程仓库的时候,报了 异常 : 

fatal : The current branch 分支名 has no upstream branch. 

( 3 )  => 最终通过 Git 本地仓库 push 到远程仓库的时候,报的 异常

fatal :  invalid refspec 'https://gitee.com/ XXXX'

( 4 )  通过 Git 本地仓库 pull 到本地的时候,报的 异常

error: Your local changes to the following files would be overwritten by merge:

( 5 )  warning: push.default is unset; its implicit value has changed in Git 2.0 from 'matching' to 'simple'.

( 6 )  error: cannot stat 'path': Permission denied

( 7 )  fatal: Unable to create 'D:/XXX/.git/index.lock': File exists.


整理自己在日常使用 Git 时 , 出现的一些异常信息 :

希望对大家伙有帮助 ~ 

实时更新 , 建议收藏哟 ~


首先如果你对 Git 还并不是很了解的话 , 

我们可以先学习了解一下 Git 基础 :

跳转链接 =>  Git _ 入门版


自己在想使用 VSCode 时 ,想在其内部使用 Git , 需要下载一个辅助插件 GitLens

但是即使 我已经安转好了 Git ,右键也能显示有 Git Bash Here , 也能正常使用 ,但在 VSCode 里却始终报异常导致无法使用 : 

( 1 !未找到 Git 。请安装 Git , 或在 “ git.path ” 设置中配置。

来源 : Git (Extension)        下载 Git        不再显示

( 2 )GitLens was unable to find Git . Plase make sure Git is Installed . Also e...

( 大致意思就是 : GitLens 无法找到 Git 。请确保已安装 Git )

( 3 )而且左边列表的 Git 源代码管理 , 也是无法使用状态

方法解决  

网上查了各种回答 ,说是什么上传一下下拉一下啥的吧 , 然而我在 Git 里面使用命令行进行上传下拉代码啥的都没有问题 , 所以我的问题原因并不在于此 , 后来解决完之后 , 我猜想可能是我新电脑初次进行安装 Git ,安装过程中也并没有按照 Git 下载安装到指定的文件目录下 , 再加上也从来没有使用过用 Git 去打开过 VSCode ,等等原因吧 , 导致 VSCode 找不到我的 Git 了

So 我使用 Git Bash Here 打开 Git 窗口 , 输入命令行  code .

进行一遍通过 Git 来打开 VSCode 的操作 , 然后很神奇的它就好了 。 。 。

分享一下自己使用 Git 时的操作习惯吧 :

首先是 推荐 大家使用 Git Bash Here 来进行 操作的 , 

因为它的后面会有 分支 提示 , 就是 显示你当前站在哪个 分支 上 , 

这样操作会很方便 , 就省去了我们 不断的去使用 git branch 命令 去查看自己所在的分支了

 在这里我主要分享的是 , 当我们想要 创建一条新分支 时的日常操作习惯 :

( 下面是在我们没有使用 Git Bash Here 进行操作的讲解 , 所以会经常查看 所在分支 )

( 1 ) 使用命令行 git status  来进行查看我们当前目录下所有文件的状态管理

( 如果检测到我们还有未上传的状态时 , 建议先是将代码提交一下 ( push ) , 目的是清空一下咱们的状态 , 以便于为咱们之后的 切换分支 操作 做铺垫 , 否则会很容易出现小问题导致切换分支不成功的 )

( 2 ) 使用命令行 git branch  来进行 查看 我们所建的 所有分支

( 如若不是站在咱们的主分支 master 上 , 就需要我们接下来进行切换分支操作了 )

( 3 ) 使用命令行 git checkout master 来进行 切换到主分支上的操作

( 4 ) 使用命令行 git branch  来再次查看我们是否切换到了主分支上

( 5 ) 使用命令行 git branch 新分支名 , 来进行创建新分支的操作

( 6 ) 使用命令行 git branch  来查看我们是否成功创建好了新分支

( 7 ) 使用命令行 git checkout 新分支 来进行 切换到新分支上的操作

( 8 ) 使用命令行 git branch  来查看我们是否成功切换到了新分支上

最后大家可以很明显的观察到 , 如果没有后面的 分支 提示 , 那我们就得需要多操作很多步骤 , 需要不断地经常使用 git branch 来查看自己目前站在哪条分支上了的操作 , 所以推荐用推荐

( 注 : 切记不要在分支上再创建分支 , 它的坏处呢就是 , 它会把你原来分支上面的东西一起创建在你新创建好的分支里的 , 然而可能这些东西并不是你想要的 , 但是你还不能把原来分支上的东西删除了 , 所以我们建议还是切换到没有任何东西, 目录很干净的 master 主分支上 , 然后咱们再进行 创建新分支的操作 )

今天刚学习到了一个新指令 , 尤其好用 , 赶紧拿来分享更新一波 :

git 新建分支 并 切换到该分支

git checkout 命令加上 –b 参数 表示 创建并切换 ,相当于如下 2 条命令 :

git branch dev

git checkout dev

再查看一下当前分支已经切换到 dev 了

 
 

这个命令尤其好用 , 配合上 Git Bash Here 来进行操作 ( 能实时查看到我们当下所站在的分支上 ) , 相信会极大的节省我们的操作时间的 , 提升工作效率


工作中遇到的分支问题

远程分支被删除后如何同步本地代码到新的远程分支上

自己的本地开发分支 ( develop 分支 ) 对应的远程分支 ( develop 分支

已被 “ 管理员 ” 删除了 ,且创建了新的远程分支 ( WEB_HOTFIX 

但是我本地还在 已被删除 的 ( develop ) 开发分支上

本地还没有删除 , 而且还写了新的代码 ,并未提交

那我怎样才能把本地分支的代码 同步 到 “ 管理员 ” 新创建的( WEB_HOTFIX )分支上呢

一 、 首先是在你本地分支写的代码为提交的状态下

 1、git fetch  ( 获取最新创建的远程分支 ) 

 2、git stash  ( 把本地未提交的代码 暂存 起来 ) 

3、git checkout ' 新分支 '  ( 切换到新创建的分支上

 4、git stash pop  ( 把 暂存 的代码 再 释放 出来 ) 

5、git branch -a  ( 查看所有分支 、 包括本地分支和远程分支

( 可以 git branch -d ' 分支名 '   删掉本地无用的分支


warning: LF will be replaced by CRLF in XXXX. The file will have its original line endings in your working directory

警告意思 : LF 和 CRLF 都是 换行符 ,意思就是说 git 要把你的 LF 换行符全部换成 CRLF 这种 换行符

产生原因 首先问题出在 不同操作系统 所使用的 换行符 是不一样的 Uinx / Linux 采用换行符 LF 表示 下一行( LF:LineFeed,中文意思是换行 )

Windows 采用 回车 + 换行 CRLF 表示 下一行( CRLF:CarriageReturn LineFeed,中文意思是回车 换行

Mac OS 采用 回车 CR 表示 下一行( CR:CarriageReturn,中文意思是 回车 )。

查看状态 :

 

当你输入这个命令的时候,会得到三种结果 :

1.true( 很多会出现这种结果 当我们操作系统是 Windows 的时候,会出现 true 当为 true 时,git 会将你暂存( git add )文件认为是文本文件,把换行符的 CRLF 转换成 LF ,而签出这些文件的时候又会变成 CRLF 格式,所以会 警告 你,这虽然只是一个小问题,但是会干扰跨平台多人合作开发 举个例子:你同事用的是 Mac 或 Linux 系统 , 你用的是 Windows 系统 , 最后交稿时就会 造成 冲突

解决办法,执行命令 :

 
 

如果不是 跨平台开发 而且是 Winows 系统,基本上 忽略这个警告 就可以啦 


2.false

 
 

3.input

 

fatal : The current branch 分支名 has no upstream branch. 

致命 :  当前分支  分支名  没有上游分支  )

解决方案

翻译后大致意思是,如果不想重新创建远程仓库再克隆 ,或者初始化本地仓库,可以使用下面命令 git push -u origin master ,其中 origin 表示 远程仓库名称 master 是远程仓库的 push 目标分支-u ( 推测为 update 缩写 ^_^ ~ )  表示本地分支将建立对远程仓库目标分支的检测,如果远程仓库目标分支不存在,将新建分支再 push ;如果存在,将进行 push 更新 。 

 


fatal :  invalid refspec 'https://gitee.com/ XXXX'

( 致命 : 无效的 refspec ' https:// XXXX ' )

前面的这个报错呢 , 主要是因为我提交之前的代码跟远程的代码并不同步 , 所以会有冲突存在 , 此时就需要我们先将远程的代码 pull 下来 ( git pull origin master ) , 进行同步一下 , 然后解决一下冲突问题 , 最后再次进行一遍提交过程 ( git add .  git commit -m "  git push -u origin 分支名 ) 就 OK 了


error: Your local changes to the following files would be overwritten by merge:

由于公司目前实行开发模块化,所以原来用的代码管理器全部迁移到 Git 上去了,原来用过 git 现在已经忘的差不多了,今天在拉取服务器的代码的出现了冲突,记录下以供后续参考: 1. 用 git pull 来更新代码的时候,遇到了下面的问题

 
 

出现这个问题的原因是别人修改了 xxx.js 并提交到版本库中去了,而你本地也修改了xxx.js, 这时候你进行 git pull 操作就会出现冲突了

解决方法,在上面的提示中也说的很明确了。 保留本地的方式修改(强烈推荐,还有一种是直接拉取服务器的(不推荐使用就不写了,这样你本地修改的代码的,就会舍弃,相当于你写的代码直接没,你还要重新写

步骤如下

通过 git stash 将工作区恢复到上次提交的内容,同时备份本地所做的修改,之后就可以正常 git pull 了, git pull 完成后,执行 git stash pop 将之前本地做的修改应用到当前工作区。 git stash git pull git stash pop

看到这里有些人就懵逼了,下面就介绍一下这三行代码代表什么意思吧

git stash : 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致。同时,将当前的工作区内容保存到 Git 栈中。

git pull : 拉取服务器上的代码

git stash pop :  从 Git 栈中读取最近一次保存的内容,恢复工作区的相关内容。由于可能存在多个 Stash 的内容,所以用栈来管理,pop 会从最近的一个 stash 中读取内容并恢复。

git stash list :  显示 Git 栈内的所有备份,可以利用这个列表来决定从那个地方恢复。

git stash clear :  清空 Git 栈。此时使用 gitg 等图形化工具会发现,原来 stash 的哪些节点都消失了。


在升级了高版本的Git工具后,在使用git push操作时,可能会出现如下提示

事实上这并不会影响你 push 的结果,最终 push 还会成功,因为这只是一个 warning。

你可以按照他说的那样运行:git config --global push.default matching 或者 git config --global push.default simple 命令,以后再 push 就不会有警告了。

 
 

 看了上面的中文是不是很清晰了呢?不管你是使用‘matching’模式还是‘simple’模式,都能去掉那一大串提示消息,但是具体使用哪个模式需要读者自行判断

下面说一下 push.default matching 和 push.default simple 的区别

push.default 设置 maching 的意思是:git push 会把你本地所有分支push到名称相对应的远程主机上。这意味着可能你会在不经意间 push 一些你原本没打算 push 的分支。

push.default 设置成 simple 的意思是:git push 仅仅把当前所在分支push 到从当初 git pull 拉去下来的那个对应分支上,另外,这个过程也会同时检查各个分支的名称是否相对应。


使用 git 管理项目时,切换分支 B ,后切换回主分支,想进行代码合并,结果报错如下

 

解决方案关闭占用此项目的所有程序 例如: 1.关掉编辑器 2.关闭项目相关的服务器 


致命:无法创建 'D:/XXX/.git/index.lock':文件存在。

一、问题描述

使用 git 在 commit / 提交 代码 的 时候 ,出现了 

 问题

如下所示

 
 

二、分析并解决问题

Git  执行操作时会自动生成  index.lock  文件 ,操作结束后会自动删除 。

这样做的 目的 是 :  避免同时操作同一个文件夹  

错误提示我们

Unable to create 'D:/XXX/.git/index.lock': File exists.  因此 ,我们 删除 该目录下的  .git/index.lock  文件即可 

删除之后 :

然后重新使用 git 提交代码 ,即可成功 ! 

fatal: Unable to create 'D:/XXX/.git/index.lock': File exists. If no other git process is currently running, this probably means a git process crashed in this repository earlier. Make sure no other git process is running and remove the file manually to continue.

致命:无法创建 'D:/XXX/.git/index.lock': 文件存在。 如果当前没有其他 git 进程在运行,这可能意味着在此存储库中有一个 git 进程早些时候崩溃了。确保没有其他 git 进程正在运行,并手动删除该文件以继续


8、  


小组合作项目时 : 正确的操作步骤 : 上传分支

( 1 ) git pull  :  一定要先与远程代码 进行 同步  ( Already up to date. )

( 2 ) git status  :  可以先行查看一下自己代码的状态

( 3 ) git add .   :  将我们工作区的代码转到 暂存区 内

( 4 ) git commit -m "说明信息"  :   将暂存区内的代码形成历史版本

( 5 ) git remote add 变量名(origin) 远程地址  :  与远程仓库建立连接

( 6 ) git push -u 变量名(origin) 分支名  :  推送上远程仓库



解决 Git 每次提交输入密码的问题

 
 
 

解决 合并 merge 分支代码 时 Git 工具页面混乱的问题

    以上就是本篇文章【Git _ 报错信息】的全部内容了,欢迎阅览 ! 文章地址:http://sicmodule.glev.cn/news/10003.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 歌乐夫资讯移动站 http://sicmodule.glev.cn/mobile/ , 查看更多   
最新新闻
2025年是乙巳年,老人说:明年“青蛇遇六卯,三人要发富”,指啥
乙巳年为啥被称之为“青蛇年”?古人计算时间,喜欢用天干地支,而干支历当中,六十甲子一个循环,甲辰年之后,就是乙巳年,而十
2024年想赚钱,这5个行业别错过,就算是新人,也能闷声发大财!
随着社会的不断发展和变化,行业的兴衰更迭也日益显著。对于想要在2024年赚钱的人来说,选择一个有潜力的行业至关重要。特别是这
为什么李子柒抖音涨粉最快最多?
数据显示,李子柒回归首条视频2小时获赞破百万、当日播放量破亿,点赞量已接近1000万,当日抖音涨粉量突破500万,目前其抖音粉丝
下一个李子柒,为何还是李子柒?
停更三年多,李子柒归来仍是“王者”,不仅在国内社交媒体轰动一时,也受到海外粉丝的热烈追捧。复更首支“漆器”视频发布10分钟
李子柒与微念事件:是商业大冒险 还是田园生活的逆袭?
本文系深潜atom第418篇原创作品羽衣翩跹的李子柒(本名:李佳佳)停更5个月了。公众最近关注到她,除了接受采访时谈及共同富裕、
李子柒归来仍是顶流
  在长达1200多天的停更之后,传统文化领域短视频创作者李子柒于11月12日正式回归,迅速引爆全网,一夜涨粉近400万,粉丝总数
下班搞副业成热潮:有人月入过万
最近,“下班后的年轻人开始搞第二事业了”的话题频登社交平台热搜。摆摊卖东西、喂宠物、做自媒体、去店铺兼职……在上班与下班
李子柒现状及收入揭秘
近日,关于李子柒的收入被曝光,引起了网络上的热议。这位优秀的短视频创作者在过去的一年多时间里,虽然暂停了更新,但其在海外
李子柒复出热搜!探寻她的传奇人生与背后的故事
李子柒,原名李佳佳,1990年出生于四川省绵阳市,是一位以短视频创作而闻名的美食博主。她的回归,无疑是当下网络热搜的一大焦点
李子柒事件是怎么回事 发生了什么
近两个月来,关于李子柒的事件显得扑朔迷离,这个曾经被誉为生活在世外桃源的仙女终究也难逃世俗纠纷,被卷入了一场舆论与资本的