jjzjj

日常开发中,你需要掌握的git使用报错解决

杰哥的技术杂货铺 2024-05-03 原文

1、不允许将代码推送到该项目上受保护的分支

- 问题发生:

remote: GitLab: You are not allowed to push code to protected branches on this project.
To https://git.lianjingkeji.com/backend/trade.git
 ! [remote rejected] main -> main (pre-receive hook declined)
error: failed to push some refs to 'https://git.lianjingkeji.com/backend/trade.git'

- 问题原因:
该分支为受保护分支,用户没有权限推送代码到这个分支。

- 解决方案:

1. 解决方法一:修改提交代码人员角色

进入代码仓库详情页,单击“成员列表”页签,搜索目标用户,修改成员为主程或以上管理权限角色

2. 解决方法二:修改分支保护设置

进入代码仓库详情页,选择“设置 > 仓库管理 > 保护分支管理”,解除对该分支的保护。

2、代码拉取失败

- 问题发生:

用git pull来更新代码,遇到了下面的问题:

# git pull
Updating fc1d61e..e4f2867
error: Your local changes to the following files would be overwritten by merge:
	main.go
Please, commit your changes or stash them before you can merge.
Aborting

- 问题原因:

团队其他成员修改了某文件并已提交入库,你在pull之前修改了本地该文件,等你修改完代码再pull时,这时会报错如下错误:

- 解决方案:

1. 解决方法一:保留修改

执行以下三条命令

git stash #封存修改
git pull origin master 
git stash pop #把修改还原

注:

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

git pull:拉取服务器上当前分支代码

git stash pop:从Git栈中读取最近一次保存的内容,恢复工作区相关内容。同时,用户可能进行多次stash操作,需要保证后stash的最先被取到,所以用栈(先进后出)来管理;pop取栈顶的内容并恢复

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

git stash clear:清空Git栈

2. 解决方法二:废弃修改:

核心思想就是版本回退,具体命令如下

git reset --hard 
git pull origin master

注:不建议使用第二种。除非你再三确定不需要本地的修改了。

3、电子邮箱未配置

- 问题描述:

使用git控制代码版本时,出现如下无法检测到邮箱的错误

# git stash

*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

fatal: unable to auto-detect email address (got 'root@ljkj-dev-00.(none)')
Cannot save the current index state

- 问题原因:

因为我们没有在 git 中分配我们的用户名和电子邮件 ID,所以我们要做的是在 git 中分配它

- 解决方案:

配置你的github用户名和和邮箱,邮箱是你github的注册邮箱,用户名是你github的用户名

git config --global user.email "lijie@163.com"
git config --global user.name "lijie"

再次运行,成功

4、git add 警告

- 问题描述:

git add:添加至暂存区,但并未提交至服务器。git add . 是表示把当前目录下的所有更新添加至暂存区。有时在终端操作这个会提示:

warning: LF will be replaced by CRLF in xxxx(需要提交的文件名).
The file will have its original line endings in your working directory

- 问题原因:

这是因为文件中换行符的差别导致的。这个提示的意思是说:会把windows格式(CRLF(也就是回车换行))转换成Unix格式(LF),这些是转换文件格式的警告,不影响使用。
git默认支持LF。windows commit代码时git会把CRLF转LF,update代码时LF换CRLF。

此时只需要执行如下代码:

git rm -r --cached .
git config core.autocrlf false
git add .

或者在Gitshell中输入如下命令解决:

git config --global core.autocrlf false

使用以下命令查看Git所有配置。

git config --list

5、提交代码分支错误

- 问题描述:

当我们在github上传创建仓库以后默认生成的页面提示我们的是推送到main分支。

error: src refspec main does not match any 
error: failed to push some refs to

- 问题原因:
但是实际我们创建的项目是在master分支下面。我们只要
把git push orgin main改成git push origin master就好了。

6、提交代码分支错误

- 问题描述:

使用 github 打 tag 的时候失败,错误提示为

We weren’t able to create the release for you. Make sure you have a valid tag.

- 解决方案:

需要先手动创建,再进行输入,就可以成功打tag

7、存在隐藏文件夹

- 问题描述:

提交代码时,报错有文件未提交

$ git add .
error: 'lijie/' does not have a commit checked out
fatal: adding files failed

- 解决方案:

原因是出现了一个隐藏文件夹lijie/ 在你的项目文件夹中找到并且删除,就OK啦

8、push或clone的文件太大

- 问题描述:

推送或克隆的文件过大

error: RPC failed; curl 92 HTTP/2 stream 5 was not closed cleanly before end of the underlying stream
send-pack: unexpected disconnect while reading sideband packet
fatal: the remote end hung up unexpectedly

- 解决方案:

原因是出现了一个隐藏文件夹lijie/ 在你的项目文件夹中找到并且删除,就OK啦

git config --global http.version HTTP/1.1
git config --global http.postBuffer 524288000 (500MB)

注:http.postBuffer 该值可以更大;–local选项指定这个设置只对当前仓库生效。

有关日常开发中,你需要掌握的git使用报错解决的更多相关文章

  1. javascript - 为什么 JavaScript IIFE 需要括号? - 2

    这个问题在这里已经有了答案:Explaintheencapsulatedanonymousfunctionsyntax(10个答案)关闭6年前。我正在阅读有关JavaScriptIIFE的内容,目前为止理解的概念,但我想知道外面的括号。具体来说,为什么需要它们?例如,(function(){varmsg='IloveJavaScript';console.log(msg);}());效果很好,但是function(){varmsg='IloveJavaScript';console.log(msg);}();产生语法错误。为什么?关于IIFE有很多讨论,

  2. javascript - 如何仅在需要时在我的 React 应用程序中加载 google maps api <script>? - 2

    我想尝试使用googlemapsAPI来显示map,但我想知道是否有更好的方法来加载<script>标记而不是将它放在我的index.html中。我希望脚本仅在我转到/map时才加载路线。所以,我想将它从我的index.html中删除并动态加载它。但是,我还想确保如果它已经加载,我不会尝试再次加载它。我不确定是否有库可以处理这个问题。到目前为止我尝试过(但失败了)是创建一个loadScript附加<script>的函数到实际的dom并为其分配一个键,所以在这种情况下'google-maps.谢谢 最佳答案

  3. javascript - 需要选中 jQuery Validate 复选框吗? - 2

    我正在使用jQueryValidation插件来验证表单。问题是我找不到验证表单中的单个复选框是否被选中的方法HTML标记:<labelfor="terms">terms:</label><inputtype="checkbox"name="terms"id="terms">jQuery代码:rules:{terms:"required"},messages:{terms:"checkthechecbox"}如有任何帮助,我们将不胜感激。

  4. c# - 需要 "Dependency Properties"的简短而清晰的定义 - 2

    我试图弄清楚依赖属性到底是什么,但是当我在任何地方寻找定义时,我只找到“如何使用”而不是“它是什么”。想象一下,你在面试时被问及什么是依赖属性。你会怎么回答? 最佳答案 DependencyProperty是一种属性,其值取决于(或可以取决于)其他一些来源(例如动画、数据绑定(bind)、样式或可视化树继承)。常规属性的值存储在它所属的对象中,而您可以认为依赖属性存储在某个数据库中。该数据库基本上由一个字典组成,该字典将(object,property)对映射到它们的值,以及哪些属性依赖于其他属性的映射(例如,当您更改面板的Data

  5. c# - for 循环优化 - 需要还是不需要? - 2

    我是否必须像下面那样优化我的FOR循环,或者编译器会为我做这件事?//thisisslow,right?for(inti=0;i<menuItem.DropDownItems.Count;i++){...}//thisshouldbemuchfasterright?for(inti=0,count=menuItem.DropDownItems.Count;i<count;i++){...}附言。我敢打赌这已经发布了,但我还没有找到任何东西,很抱歉可能是假的。PPS。抱歉,我编写了很多JavaScript-我们必须考虑这些优化...在.net世界中可能看起来很荒谬。

  6. c# - 代码检查说我需要处理对象。哪一个? - 2

    这是我的职责。我已经将客户端和消息都包装到using子句中,但在运行代码检查时仍然出错。错误指向第一个使用行:publicstaticvoidSend(MailItemmail){varsender=Membership.GetUser(mail.CreatedBy);if(sender==null){return;}using(varmsg=newMailMessage{From=newMailAddress(ConfigurationManager.AppSettings["EmailSender"],ConfigurationManager.AppSettings

  7. c# - 从 VID/PID 中查找 USB 盘符(XP 及更高版本需要) - 2

    所以我想我会在这里包含最终答案,这样您就不必理解这篇文章了。非常感谢SimonMourier花时间解决这个问题。我的工作代码try{//GetalistofavailabledevicesattachedtotheUSBhubList<string>disks=newList<string>();varusbDevices=GetUSBDevices();//EnumeratetheUSBdevicestoseeifanyhavespecificVID/PIDforeach(varusbDeviceinusbDevices){if(usbDevice.Devic

  8. c# - vs2010 beta 2 下的 CS0120 错误 - 需要对象引用 - 2

    以下代码在vs2008下可以正常工作:namespaceN2.Engine.Globalization{publicclassDictionaryScope:Scope{objectpreviousValue;publicDictionaryScope(IDictionarydictionary,objectkey,objectvalue):base(delegate{if(dictionary.Contains(key))previousValue=dictionary[key];dictionary[key]=value;},delegate{if(previousValue==n

  9. c# - 非程序员需要多长时间才能学习 C#、.NET Framework 和 SQL? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭9年前。Improvethisquestion我不太擅长编程。我完成了电子学硕士学位。我想学习C#、.NETFramework和SQL。你认为这需要多少时间(如果我每天有5个小时投入其中)?另外,我学习它们的顺序是什么?我有VisualWebDeveloper2008,是否足以开始?从同一用户的新问题中复制:我应该明确表示我希望以.NET开发为职业。我想给自己2个月的时间来了解“基础知识”。作为开发人员,IT公司对您的期望是什么?他们

  10. c# - QueueUserWorkItem() 和 BeginInvoke() 之间的区别是什么,用于执行不需要返回类型的异步事件 - 2

    根据我的BeginInvoke()/EndInvoke()问题,Delegate.BeginInvoke()和使用QueueUserWorkItem()异步调用委托(delegate)之间在性能/其他方面是否存在重大差异? 最佳答案 我能想到的关于QueueUserWorkItem的主要事情是你必须使用WaitCallback委托(delegate)类型,如果你已经有一个SomeRandomDelegate实例和一些参数。好消息是你可以用闭包来解决这个问题:ThreadPool.QueueUserWorkItem(delegate{

随机推荐

  1. c# winforms - DataGridView 重新加载后保存位置 - 2

    这是我的代码:privatevoidgetData(stringselectCommand){stringconnectionString=@"Server=localhost;User=SYSDBA;Password=masterkey;Database=C:\data\test.fdb";dataAdapter=newFbDataAdapter(selectCommand,connectionString);DataTabledata=newDataTable();dataAdapter.Fill(data);bindingSource.DataSource=dat

  2. c# - "() =>"在 C# 中是什么意思? - 2

    在CompositeApplicationGuidelines中遇到了以下行。我知道=>是一个lambda,但是()是什么意思?这还有哪些其他示例?它叫什么,我可以搜索一下吗?this.regionViewRegistry.RegisterViewWithRegion(RegionNames.SelectionRegion,()=>this.container.Resolve<EmployeesListPresenter>().View); 最佳答案 这是一个接受0个参数的lambda表达式http://msdn.

  3. c# - DragDrop 注册没有成功 - 2

    System.InvalidOperationException:DragDropregistrationdidnotsucceed.--->System.Threading.ThreadStateException:这个异常是什么意思?我在这一行尝试在运行时将面板添加到面板...splitReport.Panel1.Controls.Add(ChartPanel);在VS2008C#中工作 最佳答案 此异常意味着拥有面板(正在添加的面板)的线程已使用MTA线程模型进行了初始化。拖放系统要求调用线程使用STA线程模型(特别是它

  4. c# - 如何在特定选定项目内的 TFS 源代码管理中搜索特定文件? - 2

    代码:stringspName="usp_Test_Procedure.sql";vartfsPp=newTeamProjectPicker(TeamProjectPickerMode.SingleProject,false);tfsPp.ShowDialog();_tfs=tfsPp.SelectedTeamProjectCollection;if(tfsPp.SelectedProjects.Any()){_selectedTeamProject=tfsPp.SelectedProjects[0];}stringselectedProjectName=_select

  5. c# - 使用 mshtml 不起作用 - 2

    我有一个C#应用程序,我尝试使用一些mshtml元素。但我有一个问题。usingmshtml;命名空间给我一个错误是VisualStudio2012。这是我的源代码,namespaceTagger{usingmshtml;usingSystem;usingSystem.Collections;usingSystem.Collections.Generic;usingSystem.Runtime.CompilerServices;usingSystem.Text;publicclassHTMLForm{privatestring_action="";privatestri

  6. c# - EPPlus 自动过滤器仅适用于最后一个电池 - 2

    我希望标题中的每个单元格都包含一个自动过滤器。下面是我尝试使用的代码,但是autofilter仅在指定的最后一个单元格上设置。例如,如果我注释掉K1的autofilter命令,则创建电子表格时C1是唯一具有自动过滤器。//Headersws.Cells["A1"].Value="ChannelCode";ws.Cells["A1"].AutoFilter=true;ws.Cells["B1"].Value="DrmTerrDesc";ws.Cells["B1"].AutoFilter=tru

  7. c# - 无法分配,因为它是方法组 C#? - 2

    无法分配“AppendText”,因为它是“方法组”。publicpartialclassForm1:Form{Stringtext="";publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){Stringinches=textBox1.Text;text=ConvertToFeet(inches)+ConvertToYards(inches);textBox2.AppendText=text;}privateStringConvertToFeet(S

  8. c# - 将匿名类型列表转换为动态对象列表 - 2

    为什么我不能转换List<AnonymousObject>到List<dynamic>?我有以下代码:vardatasource=someList.Select(o=>new{x=o.A,y=o.B});dgvSomeGridView.DataSource=datasource.ToList();dgvSomeGridView.DataBind();然后我访问GridView.DataSource使用以下代码:vards=((List<dynamic>)dgvSomeGridView.DataSource);....但它在我将其转换为List&

  9. c# - 如何使用异步等待模式初始化对象 - 2

    我试图在我的服务类中遵循RAII模式,这意味着当一个对象被构建时,它就被完全初始化了。但是,我在使用异步API时遇到了困难。相关类的结构如下所示classServiceProvider:IServiceProvider//Isonlyusedthroughthisinterface{publicintImportantValue{get;set;}publiceventEventHandlerImportantValueUpdated;publicServiceProvider(IDependency1dep1,IDependency2dep2){//IDependency1provi

  10. c# - 如何使用 C# 以编程方式安装证书 - 2

    我学校的网页有自信任证书(必须手动安装)。我想创建一个程序,用于将certificate.cer(来自VisualStudio资源)安装到本地用户的Trustedrootcertificateauthority。你知道我如何在C#中做到这一点吗? 最佳答案 要以编程方式将证书添加到当前用户的受信任根存储,请使用X509Store和X509Certificate2类。例如:stringfile;//ContainsnameofcertificatefileX509Storestore=newX509Store(StoreName.Ro