2014-02-17 140 views
0

我使用的是Windows 8,PuTTY和Git 1.8.5.2.msysgit.0。無法推送混帳存儲庫

我有一個在Debian服務器上運行的中央git存儲庫。我可以在我的多個debian機器之間克隆,推,拉,合併(做所有事情)沒有問題。

我可以克隆和拉動使用git clone [user]@[host]:/usr/git/site.git git回購,這將克隆git回購沒有問題。

問題是,當我嘗試和推動混帳更改到中央回購,我得到這個錯誤:

warning: push.default is unset; its implicit value is changing in 
Git 2.0 from 'matching' to 'simple'. To squelch this message 
and maintain the current behavior after the default changes, use: 

    git config --global push.default matching 

To squelch this message and adopt the new behavior now, use: 

    git config --global push.default simple 

See 'git help config' and search for 'push.default' for further information. 
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode 
'current' instead of 'simple' if you sometimes use older versions of Git) 

error: insufficient permission for adding an object to repository database ./objects 

fatal: failed to write object 
error: unpack failed: unpack-objects abnormal exit 
To [user]@[host]:/usr/git/site.git 
! [remote rejected] master -> master (n/a (unpacker error)) 
error: failed to push some refs to '[user]@[host]:/usr/git/site.git 

我無法弄清楚什麼是錯的,因爲,如果我從另一個推動工作正常linux機器到中央倉庫。

回答

1

當試圖推送的用戶沒有對遠程服務器中的git repo的寫入權限時,會發生這種情況。你可以這樣如下:

$ ssh [email protected] 
$ cd repository.git 
$ sudo chmod -R g+ws * 
$ sudo chgrp -R mygroup * 
$ git config core.sharedRepository true 
+0

我意識到我使用了錯誤的帳戶。在Debian中,我使用了SSH配置文件,所以我從來不必輸入帳戶信息,而且我忘記了我已將其設置在不同的帳戶上。 –