【发布时间】:2016-05-08 01:46:41
【问题描述】:
我是 Git 的新手(在 BitBucket 上)并且对它做得很好(大量阅读许多网站、文章等)。但是,一旦我的存储库增长(当我向其中添加东西/编写新代码时),我就会一直遇到这个问题,我最终会一遍又一遍地恢复和做事情并得到相同的结果,可以推送,可以推送,然后失败。
这是一个 PHP/codeigniter 项目,大小约为 50mb,混合了 PHP/CSS/JS。我在想文件可能已损坏,但这似乎并没有加起来,因为它不断发生在不同的文件中。
我在 Windows 10 上,使用 Git(git 版本 2.7.0.windows.1)和 phpStorm IDE。我尝试过同时使用 HTTPS(所有 http.buffer 更改等是否仍然失败并出现致命错误:远程端意外挂起),然后移至 SSH,现在出现此错误(基本上相同):
Pushing to git@bitbucket.org:(username)/(repo).git
Counting objects: 1855, done.
Delta compression using up to 16 threads.
Compressing objects: 100% (1660/1660), done.
Received disconnect from xxx.xxx.xxx.xxx: 2: Packet corrupts
Disconnected from xxx.xxx.xxx.xxx
fatal: The remote end hung up unexpectedly
fatal: sha1 file '<stdout>' write error: Broken pipe
error: failed to push some refs to 'git@bitbucket.org:(username)/(repo).git'
我只想说,当我只尝试做非常基本的事情时,我完全不知道 Git 是如何让我失望的……我认为使用它来加速某些事情并使用版本会很有帮助控制,似乎我花更多时间解决 Git 问题而不是编写实际代码......
请,请,请不要发布任何关于 http.buffer 的内容,它什么也没做,而且我现在正在使用 SSH...
【问题讨论】:
-
我不认为 GIT 是这里的问题,听起来更像是权限问题。您可以尝试创建一个新的远程仓库并推送到该仓库吗?
-
我现在正在使用一个新分支,如果我加载 master 并从中创建一个新分支,一切都很好。但是一旦我开始做一些工作和 repo 大小增长,这似乎是导致问题的原因.. 在 Windows 上执行此操作对我来说有点陌生,因为在 Linux 中我通常会进入并使用 CHMOD 递归设置文件权限,看看这是否有帮助(我认为这可能是问题,但无法弄清楚我将如何检查它)。
-
Packet corrupts来自 ssh,而不是 git,因此您可以从那里开始调查。 -
我遇到了来自 HTTPS 和 SSH 的问题,所以除了用于发送数据的协议之外还有其他问题吗?