相关疑难解决方法(0)

推送到GitHub时出错 - 没有足够的权限将对象添加到存储库数据库

尝试对我的GitHub存储库执行"git push"时,我回到了一个不寻常的错误:

Counting objects: 8, done.
Delta compression using 2 threads.
Compressing objects: 100% (4/4), done.
Writing objects: 100% (5/5), 1.37 KiB, done.
Total 5 (delta 2), reused 0 (delta 0)
error: insufficient permission for adding an object to repository database ./objects

fatal: failed to write object
error: unpack-objects exited with error code 128
error: unpack failed: unpack-objects abnormal exit
To git@github.com:bixo/bixo.git
 ! [remote rejected] master -> master (n/a (unpacker error))
error: failed to push some refs to 'git@github.com:bixo/bixo.git'
  • 在从GitHub进行干净的克隆之后,我可以编辑/添加/提交/推送修改后的文件. …

git github

126
推荐指数
7
解决办法
16万
查看次数

哪个更聪明的git协议,ssh或git(通过ssh)或https协议?

哪个有效?SSH://或Git://(文件压缩)

我在Git中理解,git协议是智能的,因为在通信的两端都有一个协议代理来压缩文件传输,从而通过有效地利用网络带宽实现更快的克隆.

O'Reilly的书中我发现了以下陈述.

For secure, authenticated connections, the Git native 
protocol can be tunneled over an SSH connection using
the following URL templates:

ssh: //[user@]example.com[:port]/path/to/repo.git
ssh: //[user@]example.com/path/to/repo.git
ssh: //[user@]example.com/~user2/path/to/repo.git
ssh: //[user@]example.com/~/path/to/repo.git*
Run Code Online (Sandbox Code Playgroud)

我不确定作者是否意味着他说的话.他谈到git协议通过SSH进行隧道传输.

从我的角度来看,除非你连接到git端口(代理端口),否则协议不起作用.SSH仅仅是未压缩的文件传输.
但是根据作者的说法,如果我们使用SSH,他说git协议是通过它进行隧道传输的.那么在GIT中SSH更智能吗?

冯C,谢谢你的回答."网络协议(HTTP和Git)通常是只读的"Git可以rw在你运行deamon时制作--enable=receive-pack.

以下是我的担忧.
当他们说git协议是智能的时,他们就意味着当你执行git clone时,git服务器代理会压缩发送回客户端的数据,因此克隆应该更快.在我的用例中,我将在香港设置git服务器并在圣何塞和其他国家使用它.因此,我希望由于延迟问题而在网络上保持高效.

所以我的问题是,当我使用时,我git clone ssh://user@server/reposloc也获得了git协议的好处吗?根据O'Reilly作者的书,他的意思是git通过ssh进行隧道传输,那么当我没有在服务器上运行git守护进程时,git协议如何工作.

所以使用SSh:// xyz ...它是否同时给出了ssh和git协议的好处?

提前感谢您的答案.

git github msysgit

50
推荐指数
3
解决办法
4万
查看次数

制作git push尊重权限?

我们使用托管在远程位置的git仓库,并进行共享.我们希望repo是用户和组可读和可写,但没有其他任何权限.远程仓库由不同的用户(比如rUser)拥有.我已core.sharedRepository0660我的本地回购,以及远程回购.另外,我的umask是0027.因此,每当我创建一个新文件时,它都没有其他权限.

尽管如此,出于某种原因,每当我将更改推送到远程仓库时,它都会在repo.git/objects/目录中创建一些具有权限的新对象-r--r--r--.甚至更奇怪的是,它使我(而不是远程用户)成为目录/文件的所有者.知道发生了什么事吗?

我尝试通过在stackoverflow上查看几个看似相关的问题来找到答案,但找不到任何东西.

git permissions

15
推荐指数
1
解决办法
1万
查看次数

像gitolite这样的程序如何运作?

我很好奇gitolite这样的程序是如何工作的 - 特别是它们如何与SSH协议交互以提供量身定制的体验.有人可以提供一个例子,说明我可以如何完成以下内容以及我可能在哪里了解更多有关此主题的内容?

? ssh git@github.com
PTY allocation request failed on channel 0
Hi <username>! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
Run Code Online (Sandbox Code Playgroud)

一个附带问题:我的主要语言是JavaScript.是否有可能用NodeJS完成我想要的东西?

ssh gitolite

11
推荐指数
2
解决办法
7211
查看次数

标签 统计

git ×3

github ×2

gitolite ×1

msysgit ×1

permissions ×1

ssh ×1