Git

無法訪問 URL http://mywebsite.com/myproject/,返回程式碼 22 致命:git-http-push 失敗

  • August 28, 2017

我已經在我的伺服器上設置了一個遠端 git 儲存庫。這是文件和目錄結構

/var/lib/git/myproject1 ## the git repository for myproject1
/var/lib/git/myproject2 ## the git repository for myproject2

/var/www/mywebwebsite.com/public_html/myproject1  ## symbolic link to /var/lib/git/myproject1
/var/www/mywebwebsite.com/public_html/myproject2  ## symbolic link to /var/lib/git/myproject2

這是我的 .gitconfig 的樣子

[core]
   excludesfile = /var/www/.gitignore
[user]
       name = webguy
       email = support@mywebsite.com

所以從我的本地主機我成功地執行了一個git pull mypro1 mastermypro1指向http://mywebsite.com/myproject1. 拉取按預期從遠端儲存庫下載了所有文件。但是當我做 a 時git push mypro1 master,我得到了錯誤

Cannot access URL http://mywebsite.com/myproject1/, return code 22 fatal: git-http-push failed 

myproject2我在儲存庫中遇到同樣的錯誤。

我是否錯誤地設置了 git 或 apache?

您需要啟用dav通過 http 主動推送更改。查看官方git server over http 指南,了解如何安裝它的詳細資訊,以及您可能錯過的其他內容。

編輯 .git/config 文件的以下部分:

[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = http://git.repository.url/repo.git

[remote "origin"]
fetch = +refs/heads/*:refs/remotes/origin/*
url = http://username:password@git.repository.url/repo.git

然後嘗試git push origin master

根據需要編輯其他儲存庫 URL 的配置文件中的身份驗證詳細資訊,並推送到所需的分支。

引用自:https://serverfault.com/questions/256329