Git:无法推送{n / a(解包器错误)}

时间:2013-09-30 05:05:45

标签: windows git gitolite git-bare

我在我的本地机器[Windows操作系统]中创建了一个裸仓库并安装了gitolite。

当我尝试将更改推送到裸仓库时,我收到以下错误:

$ git push origin master

Counting objects: 3, done.
Writing objects: 100% (3/3), 293 bytes, done.
Total 3 (delta 0), reused 3 (delta 0)
error: insufficient permission for adding an object to repository database ./objects

fatal: failed to write object
error: unpack failed: unpack-objects abnormal exit

To //172.16.90.196/repositories/Test.git

 ! [remote rejected] master -> master (n/a (unpacker error))

error: failed to push some refs to '//172.16.90.196/repositories/Test.git'

我已经google了同样的错误,但到处都是最终的权限,它是特定于linux。你有没有人可以帮助我在Windows操作系统上解决这个问题。

由于我是我的计算机的管理员,希望权限不会是问题。

请帮帮我。

3 个答案:

答案 0 :(得分:0)

这不是许可问题,而是gitolite使用问题:

你不应该创建一个裸仓库,你应该在你的gitolite.conf repo克隆的gitolite-admin文件中声明一个新的仓库名称,并将该管理仓库推回你的gitolite实例。登记/> 这将触发创建新的回购。

请参阅“Adding and removing repos”。

答案 1 :(得分:0)

登录您的推送目的地机器172.16.90.196。

如果是linux机器,请转到git-directory并更改权限,如下所示: chmod -R g + w * 也许您不在正确的linux用户组中,然后您可以成为该组的成员,或者您放松所有用户的权利: chmod -R a + w * 如果您没有足够的权限这样做,那么具有root权限的您(或其他人)必须使用chmod。

如果目标计算机172.16.90.196是Windows计算机,请转到git-directory并更改用户的权限: 右键单击该目录,打开属性对话框并转到安全性并为您的用户(组)添加写权限。

答案 2 :(得分:0)

git fsck
git prune
git repack
git fsck