我正在关注git的doc来创建远程服务器上的存储库 在本地电脑上:
$ git clone --bare my_project my_project.git
我已经在服务器上复制了存储库
$ scp -r my_project.git myuser@myip:/opt/git
但如果我尝试克隆
git clone myuser@myip:/opt/git/my_project.git
我得到了
fatal: 'opt/git/my_project.git' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我认为这是一个权限问题,但如果我与ssh myuser@myip
连接,我没有问题创建文件o做任何事情,该文件夹属于myuser。
答案 0 :(得分:0)
首先,检查您的来源是否已设置
git remote -v
这应该显示项目的所有推送/提取遥控器。
如果没有输出则返回,跳到最后一个代码块。
验证远程名称/地址
如果返回显示您已设置遥控器,请检查遥控器的名称是否与您在命令中使用的遥控器相匹配。
$git remote -v
myOrigin ssh://git@example.com:1234/myRepo.git (fetch)
myOrigin ssh://git@example.com:1234/myRepo.git (push)
# this will fail because `origin` is not set
$git push origin master
# you need to use
$git push myOrigin master
如果您想重命名遥控器或更改遥控器的网址,您需要首先移除旧遥控器,然后添加正确的遥控器。
删除旧遥控器
$git remote remove myOrigin
添加丢失的远程
然后,您可以使用
添加适当的遥控器$git remote add origin ssh://git@example.com:1234/myRepo.git
# this will now work as expected
$git push origin master