【知识整理】Git 使用实践问题整理

问题1、fatal: refusing to merge unrelated histories

一、Git 的报错


fatal: refusing to merge unrelated histories
新建了一个仓库之后,把本地仓库进行关联提交、拉取的时候,出现了如下错误:

fatal: 'master' does not appear to be a git repository
fatal: Could not read from remote repository.

二、解决方案


在你操作命令后面加 --allow-unrelated-histories
 

git merge master --allow-unrelated-histories
$ git pull --allow-unrelated-histories
CONFLICT (add/add): Merge conflict in .gitignore
Auto-merging .gitignore
Automatic merge failed; fix conflicts and then commit the result.

这里由于我中间更换了代码仓库,然后又换回到原来的代码仓库,需要手动合并之后再进行 add、commit 即可。

如果你是git pull或者git push报fatal: refusing to merge unrelated histories
同理:

git pull origin master --allow-unrelated-histories / git pull --allow-unrelated-histories

问题2、warning: in the working copy of '...', LF will be replaced by CRLF the next time Git touche

一、Git的报错

执行git add .的时候出现的警告“warning: in the working copy of ‘...‘, LF will be replaced by CRLF the next time Git touche”

新项目很多文件都是新建的,CR/LF是不同操作系统上使用的换行符:

CR(CarriageReturn回车'\r'):回到一行的开头,ASCII代码是13

LF(LineFeed换行'\n'):另起一行,ASCII代码是10

二、问题分析

Dos和Windows平台:

使用回车(CR)和换行(LF)两个字符来结束一行,回车+换行(CR+LF),即“\r\n”;所以平时编写文件的回车符应该确切来说叫做回车换行符。Mac 和 Linux平台:只使用换行(LF)一个字符来结束一行,即“\n”;许多 Windows 上的编辑器会悄悄把行尾的换行(LF)字符转换成回车(CR)和换行(LF),或在用户按下 Enter 键时,插入回车(CR)和换行(LF)两个字符。

三、解决问题

情况一:windows用户

Git 可以在你提交时自动地把回车(CR)和换行(LF)转换成换行(LF),而在检出代码时把换行(LF)转换成回车(CR)和换行(LF)。因为git 的 Windows 客户端基本都会默认设置 core.autocrlf=true

#提交时转换为LF,检出时转换为CRLF:
git config --global core.autocrlf true

情况二:MAC用户

Git 在检出文件时不需要进行自动的转换。然而当一个以回车(CR)和换行(LF)作为行结束符的文件不小心被引入时,这是肯定想让 Git 修正。

所以,可以把 core.autocrlf 设置成 input 来告诉 Git 在提交时把回车和换行转换成换行,检出时不转换:(这样在 Windows 上的检出文件中会保留回车和换行,而在 Mac 和 Linux 上,以及版本库中会保留换行。)Linux 最好不要设置 core.autocrlf,因为这个配置算是为 Windows 平台定制;

#提交时转换为LF,检出时不转换
$ git config --global core.autocrlf input

情况三:Windows 用户其他情况

如果你正在开发仅运行在 Windows 上的项目,可以设置 false 取消此功能,把回车保留在版本库中:

#提交检出均不转换,你也可以在文件提交时进行safecrlf检查
git config --global core.autocrlf false#拒绝提交包含混合换行符的文件
git config --global core.safecrlf true   #允许提交包含混合换行符的文件
git config --global core.safecrlf false   #提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn

Windows 上设置 core.autocrlf=false,仓库里也没有配置 .gitattributes,很容易引入 CRLF 或者混合换行符(Mixed Line Endings,一个文件里既有 LF 又有CRLF)到版本库,这样就可能产生各种奇怪的问题。

问题三、git commit -m 编辑后发现需要更改

在Git的提交命令git commit -m "message"中,-m选项用于指定提交信息。如果想要修改已经输入的提交信息并将其应用到最新的commit上

使用下面的操作流程:

1、首先,通过运行git log或者git reflog来查看当前分支的提交记录,确认需要修改的commit所对应的SHA值(commit ID)。

2、然后,使用git rebase -i <commit-id>命令进行交互式rebase操作,将<commit-id>替换为目标commit的ID。这会打开一个文本编辑器,显示了从该commit之后的所有commits列表。

3、在编辑器中,将需要修改的commit所在行的pick关键字改成edit,保存并关闭编辑器。

4、Git会自动切换到被修改的commit,此时可以使用git commit --amend命令重新编辑提交信息。

5、完成编辑后,再次运行git rebase --continue命令,将更改应用到原始commit上。

6、若还有其他未处理的commit,则按照相同的步骤继续进行rebase操作直到结束。

7、最后,使用git push origin <branch-name> --force命令将修改后的commit推送到远程仓库,注意加上--force参数以覆盖原有的commit。

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

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

相关文章

js原型原型链

js原型原型链 在 JavaScript 中&#xff0c;每个对象都有一个原型&#xff08;prototype&#xff09;。对象的原型是另一个对象的引用&#xff0c;它包含对象的共享属性和方法。JavaScript 中的原型链则是对象之间通过原型链接起来的一种机制&#xff0c;用于实现继承和属性查找…

电脑无法开启虚拟化

vm开启虚拟化失败 如果出现以下错误&#xff0c;需要进入bios界面&#xff0c;不同电脑进入界面的方式不一样。这里以hp为例&#xff1a; 1、关机后&#xff0c;按住开机键和f10&#xff0c;进入如下界面&#xff08;语言在主菜单里面&#xff09; 2、选择先进和下面的系统选…

c语言游戏实战(10):坤坤的篮球回避秀

前言&#xff1a; 这款简易版的球球大作战是博主耗时两天半完成的&#xff0c;玩家需要控制坤坤在游戏界面上移动&#xff0c;来躲避游戏界面上方不断掉下来的篮球。本游戏使用C语言和easyx图形库编写&#xff0c;旨在帮助初学者了解游戏开发的基本概念和技巧。 在开始编写代…

Vue使用高德地图定位到当前位置,并显示天气信息

首先得去高德控制台申请两个 key&#xff0c;一个天气key和一个定位key 获取天气信息的函数&#xff1a; const getWeather function (city) {// 使用 fetch 发送请求获取天气信息fetch(https://restapi.amap.com/v3/weather/weatherInfo?city${city}&keyeefd36557b0250…

哪个有名的工具可以安全记事 私密记事本笔记推荐

在这个数字化的时代&#xff0c;我们的生活已经离不开各种记事工具。它们帮助我们记录生活中的点点滴滴&#xff0c;无论是工作上的重要事项&#xff0c;还是个人的私密心情。然而&#xff0c;当我在寻找一个能够安心记录私密事情的工具时&#xff0c;安全性成为了我最关心的因…

C++从零开始的打怪升级之路(day42)

这是关于一个普通双非本科大一学生的C的学习记录贴 在此前&#xff0c;我学了一点点C语言还有简单的数据结构&#xff0c;如果有小伙伴想和我一起学习的&#xff0c;可以私信我交流分享学习资料 那么开启正题 今天分享的是关于继承的知识点 1.菱形继承 我们有许多关于继承…

【软件测试】Postman中变量的使用

Postman中可设置的变量类型有全局变量&#xff0c;环境变量&#xff0c;集合变量&#xff0c;数据变量及局部变量。区别则是各变量作用域不同&#xff0c;全局变量适用于所有集合&#xff0c;环境变量适用于当前所选环境&#xff08;所有集合中均可使用不同环境变量&#xff09…

【CSP试题回顾】202309-2-坐标变换(其二)

CSP-202309-2-坐标变换&#xff08;其二&#xff09; 关键点总结 1.输入输出的同步关闭&#xff0c;以加快I/O操作的速度 这一点还是很重要的&#xff0c;本题代码如果不进行输入输出的同步关闭会时间超限。 ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);2.…

职场中的祖传代码处理建议

程序员是如何看待“祖传代码”的&#xff1f; 祖传代码的由来 在实际的程序员工作中&#xff0c;祖传代码是常见的。因为真正的互联网职场生活中&#xff0c;业务变动调整频繁&#xff0c;每到一个新的业务线&#xff0c;第一件事就是熟悉现有工程代码&#xff0c;看旧文档等…

K8S中POD的控制器

一、Pod控制器及其功用 Pod控制器&#xff0c;又称之为工作负载&#xff08;workload&#xff09;&#xff0c;是用于实现管理pod的中间层&#xff0c;确保pod资源符合预期的状态&#xff0c;pod的资源出现故障时&#xff0c;会尝试进行重启&#xff0c;当根据重启策略无效&am…

Linux基础命令[9]-wc

文章目录 1. wc 命令说明2. wc 命令语法3. wc 命令示例3.1 不加参数3.2 -c&#xff08;统计字节数&#xff09;3.3 -m&#xff08;统计字符数&#xff09;3.4 -l&#xff08;统计行数&#xff09;3.5 -L&#xff08;最长一行的长度&#xff09;3.6 -w&#xff08;统计单词数&am…

Arcgis实现点位空间位置从上到下从左到右排序

效果 背景 工作项目中经常会遇到需要对网格进行编号&#xff0c;而编号是有一定原则的&#xff0c;比如空间位置从上到下从左到右&#xff0c;或者其它原则&#xff0c;那么都可以通过下面的方式来实现 1、准备数据 点shp文件&#xff0c;查看初始FID字段标注&#xff0c;目…

transformer--transformer模型构建和测试

前面几节进行了各种组件的学习和编码&#xff0c;本节将组件组成transformer&#xff0c;并对其进行测试 EncoderDecoder 编码器解码器构建 使用EnconderDecoder实现编码器-解码器结构 # 使用EncoderDeconder类实现编码器和解码器class EncoderDecoder(nn.Module):def __ini…

飞书文档批量导出

背景需求 最近所参与的项目即将结项&#xff0c;需要将飞书中的产品需求文档&#xff08;PRD&#xff09;交付给甲方&#xff0c;由于文档较多&#xff0c;大概有两百多个&#xff0c;一个一个的下载导出&#xff0c;太麻烦了&#xff08;PS&#xff1a;本人比较懒&#xff09;…

ROS create_wall_timer/create_timer函数区别

在ROS&#xff08;Robot Operating System&#xff09;中&#xff0c;create_wall_timer 和 create_timer 是用于创建定时器的两个不同的函数&#xff0c;它们在使用上有一些区别&#xff1a; Clock Type: create_wall_timer: 创建的定时器是基于Wall clock的&#xff0c;这意…

软考笔记--结构化分析方法

结构化分析&#xff08;SA&#xff09;方法的基本思想是自定向下&#xff0c;逐层分解&#xff0c;把一个大问题分解成若干个小问题&#xff0c;每一个小问题再分解成若干个更小的问题。经过逐层分解&#xff0c;每个最低层的问题都是足够简单、容易解决的。 SA方法分析模型的…

78. 子集(力扣LeetCode)

文章目录 78. 子集题目描述回溯算法 78. 子集 题目描述 给你一个整数数组 nums &#xff0c;数组中的元素 互不相同 。返回该数组所有可能的子集&#xff08;幂集&#xff09;。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1&#xff1a; 输入&#xff…

selenium高亮元素

def set_high_light_elment(self, element): """高亮web元素。 Args: element: WebElement:web元素 """ element_styleelement.get_attribute(style) self.mark_dom_text(element_s…

【MySQL】表的约束——空属性、默认值、列描述、zerofill、主键、自增长、唯一键、外键

文章目录 MySQL表的约束1. 空属性2. 默认值3. 列描述4. zerofill5. 主键6. 自增长7. 唯一键8. 外键 MySQL 表的约束 MySQL中的表的约束是一种规则&#xff0c;用于限制或保护表中数据的完整性和合法性。约束可以确保数据在插入、更新或删除时满足特定的条件&#xff0c;从而维护…

MySQL相关问题

MySQL相关问题 一、MySQL支持哪些存储引擎&#xff1f;二、MySQL是如何执行一条SQL的&#xff1f;三、MySQL数据库InnoDB存储引擎是如何工作的&#xff1f;四、如果要对数据库进行优化&#xff0c;该怎么优化&#xff1f;五、MySQL如何定位慢查询&#xff1f;六、如何分析MySQL…