Git签出提前结束,出现总线错误(内核转储)
我正在使用ubuntu,最近我试图使用此处的说明将git从当前版本2.28更新到最新版本2.29.2,但我未能安装完成此git版本安装所需的“docbook2X” 所以我现在的问题是我的git现在似乎不能正常工作。我的计算机上有一个存储库,如果我尝试签出到另一个分支,它就会失败。因此,基本上,当它试图进行“git签出”时,它突然停止并返回“总线错误(内核转储)” 因此,当我使用“git status”进行检查时,一些文件看起来被git checkout命令修改了,但git没有更改存储库 因此,我删除了.git/index.lock,然后运行git restore。若要恢复,请再次清理目录。重复此过程,仍然会得到相同的结果。所以基本上,我被困在一个分支上,无法结帐到另一个分支Git签出提前结束,出现总线错误(内核转储),git,Git,我正在使用ubuntu,最近我试图使用此处的说明将git从当前版本2.28更新到最新版本2.29.2,但我未能安装完成此git版本安装所需的“docbook2X” 所以我现在的问题是我的git现在似乎不能正常工作。我的计算机上有一个存储库,如果我尝试签出到另一个分支,它就会失败。因此,基本上,当它试图进行“git签出”时,它突然停止并返回“总线错误(内核转储)” 因此,当我使用“git status”进行检查时,一些文件看起来被git checkout命令修改了,但git没有更改存储库 因此,我
非常感谢您的帮助更新:这就是我解决这个问题的方法。
git clone the_new_repo/
cd the_new_repo/
git fetch "https://github.com/my_username/project.git" "Branch_To_be_fetched"
git checkout Branch_that_was_fetched
幸运的是,我所有的远程版本都是最新的本地版本更改,所以我没有丢失任何工作。我相信问题是由于
.git
文件夹中的文件损坏造成的。我找不到调试这些错误的方法,所以我选择了删除并重新克隆repo
解决方案。卸载/删除git,然后重新安装
步骤1:
sudo apt-get remove --auto-remove git
步骤2:
sudo apt install git-core
这表明有些地方出了问题——要么是Git中的一个bug,要么是计算机中的一些严重错误(硬件或软件:可能是坏内存、坏库等)。如果您从头开始构建自己的Git,您可以尝试在调试模式下构建它,看看是否可以通过这种方式跟踪问题。通常大多数人只是安装一个预构建的Git包。您需要2.29.2而不是2.28有什么特别的原因吗?我认为一个git存储库有问题,因为其他git存储库似乎工作正常。这个存储库中似乎有许多错误文件,我不知道如何修复它们。另外,我需要2.29.2版本,因为我正在使用一些工具,但当我检查git时,它看起来也没有安装——我仍然在2.28版本,但安装过程没有返回任何错误。啊,这可能是一个错误安装:如果你让2.29.2自行安装,部分地用2.29.2重写了2.28系统版本,您正在运行的2.28版本正在调用2.29.2部分来完成任务,并且对它们的响应感到困惑。请注意,当您构建Git时,您会告诉它自己应该安装在哪里;当您以后安装Git时,您会告诉它安装在哪里。您必须遵守这两个步骤。那么您认为我应该尝试查找git 2.29.2的安装文件并卸载它吗?你对解决这个问题的建议是什么?好吧,如果你真的打算运行2.29.2,重新构建并重新安装它,但是使用Ubuntu用户使用的配置构建(并安装),不管是什么。