我开始使用从Bitbucket克隆的项目。我使用Git Bash和SourceTree。我更改了一个文件并尝试提交我的更改。我可以执行"add"命令,但是当我尝试执行"commit"命令(git commit -m "for testing")时,我会收到以下错误消息:Segmentation fault。在SourceTree中也出现了错误。但是,如果我创建新的文件夹和文件,则提交成功。如何解决这个问题?提前致谢。
我在 Windows 10 x64 v1709 上运行 git 2.15.1.windows.2
我的问题是由于索引文件出错导致的。为了解决这个问题,我在项目目录下运行了以下命令:
rm .git/index
git reset
如果您已经安装了Git,可以通过Git本身获取最新的开发版本:
git clone https://github.com/git/git
但这对我没有起作用。我卸载了git,然后重新下载,问题就得到解决了。
我已经解决了这个问题。最新的git版本(2.13.1)有一个bug - 它发布于2017年5月6日。我安装了之前的版本(2.12.2),现在一切都正常。
我在一些项目中遇到了相同的问题,无法检出新分支或现有分支。我从网站上安装了最新版本的git,现在我的版本是
> git --version
git version 2.13.1.windows.2
使用 git reset SHA --hard
其中的 SHA
指向错误之前的有效 SHA
此点之后的更改将会丢失,但仓库已保存。
parse_tree_indirect()
返回的值,以将段错误转换为调用 die()
。
适用于 clone
/checkout
,但也可以应用于 commit
。
请查看提交8d2eaf6(2022年3月1日)由Glen Choo (chooglen
)提交。
(由Junio C Hamano -- gitster
--合并于提交bde1e3e,2022年3月13日)
当一个树的对象ID无效时,
checkout, clone
:如果无法解析树,则停止运行签署者:Glen Choo
parse_tree_indirect()
可能会返回NULL
。NULL
而不是继续像它是有效指针一样并导致段错误。