linux - Git 初始推送错误文件描述符错误

标签 linux git bash

我是 git 新手,一直在关注有关设置集中式 git 服务器的各种教程。在过去的几天里,我一直遇到以下错误消息的问题:

Counting objects: 59, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (59/59), done.
Writing objects: 100% (59/59), 525.33 KiB | 0 bytes/s, done.
Total 59 (delta 15), reused 0 (delta 0)
remote: fatal: failed to read object 24e3826fe4be7dbaddbfcd698e943b5b8f9598ec : Bad file descriptor
error: unpack failed: unpack-objects abnormal exit
To ssh://git@[server url]/volume1/git/[project name]
 ! [remote rejected] master -> master (unpacker error)
error: failed to push some refs to 'ssh://git@[server url]/volume1/git/[project name]'

最初,我在客户端使用 GitEye 来管理 git 存储库,但是当我尝试将第一次提交推送到 Linux 服务器时遇到了问题。所以我尝试了权限并将整个 git 目录的所有权递归地设置为用户“git”。什么都不起作用。因此,我尝试从服务器克隆一个裸存储库,然后尝试推送,但这也不起作用...返回我并出现解包错误。

所以我将我的软件切换到 Git Extensions,并尝试在 Git Bash 上推送...仍然是同样的错误。哦,忘了说,在这个过程中,我多次删除了本地和远程 git 存储库。

虽然有人可能会说这可能是 git push over sshfs failing with “error when closing sha1 file: Bad file descriptor” 的重复项,但我不使用 sshfs,并且我在客户端运行 Windows。

这可能是 Git push error - fatal: file '' write error: Bad file descriptor 的重复项,但是之前推送从来没有起作用。

更新: 说到版本,我想知道服务器和客户端之间的版本不匹配是否是问题的根源。于是我将客户端git版本从1.9.4降级到1.8.4.msysgit.0,但删除并重新创建新的git仓库后仍然发现问题。

有趣的是,我还尝试手动将 git 存储库从客户端复制到服务器,并在远程端执行 git status。结果,我遇到了错误的文件描述符,但该错误并未出现在客户端。

最佳答案

我找到了问题的根源。我尝试在远程端进行第一次提交,但收到“不是有效对象”错误。因此,我的远程端的 git 构建很糟糕。感谢您的指导。它为我指明了正确的寻找路径。

现在我必须弄清楚如何为我的远程平台获取更新(或不同)版本的 git,而无需使用 ipkg。

关于linux - Git 初始推送错误文件描述符错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26117549/

相关文章:

linux - 从日期中获取月份和日期

windows - 从 Windows 访问本地 git 存储库

GIT:理解分支命名约定的问题

git - 如何创建多个 GIT 实例?

linux - 如何使用 grep 和 awk 提取特定值?

linux - BSUB 将多个 matlab 作业集中到一个集群中?

linux - 使用终端显示图像而不会失去焦点

linux - 编辑 ELF 可执行文件以减小其大小

windows - Postgres 9.0 linux命令到windows命令的转换

linux - shell脚本-文件存在