0

我正在尝试清理 git 存储库。有一些已识别的大文件的大小已减小并重新提交。问题是历史仍然有旧文件。所以我使用 bfg 清洁工作来修剪 git repo。为此,我首先创建了一个 repo 的镜像克隆,然后进行一些过滤以减小大小。

克隆命令:-

git clone --mirror ssh://git@url/repo.git

我成功地进行了清理并减小了克隆镜像的大小。现在我尝试将其推送到远程服务器。我用 :-

git push

这失败并出现以下错误:-

Counting objects: 214329, done.

Delta compression using up to 8 threads.

Compressing objects: 100% (80081/80081), done.

Writing objects: 100% (211535/211535), 666.00 MiB | 1.52 MiB/s, done.

Total 211535 (delta 116658), reused 206326 (delta 112960)

remote: You are attempting to update refs that are reserved for Stash's pull

request

remote: functionality. Stash manages these refs automatically, and they may
 not be

remote: updated by users.

remote: 

remote: Rejected refs:

remote:     refs/pull-requests/190/from

remote:     refs/pull-requests/247/from

remote:     refs/pull-requests/247/merge

remote:     refs/pull-requests/269/from

remote:     refs/pull-requests/269/merge

remote:     refs/pull-requests/270/from

To ssh://git@url/repo.git

 ! [remote rejected] integration -> integration (pre-receive hook declined)

 ! [remote rejected] integration_after_mavenrework -> integration_after_mavenrework (pre-receive hook declined)

 ! [remote rejected] master -> master (pre-receive hook declined)

我不知道为什么我不能推动。我对 repo 有写权限。

我被卡住了,感谢您的帮助。

4

1 回答 1

2

问题在这里:

git push

您必须使用旧版本的 git <2。

在旧版本中,只要您git push/pull在命令 git push 所有分支(修改)到服务器后使用没有任何分支名称。

在您的情况下,您也必须克隆拉取请求,而不是尝试将它们推回存储服务器。

Stash 拒绝它,并且不允许您推送这些 refs。

于 2016-01-04T21:03:57.183 回答