我需要在生产服务器中设置一个git存储库,这样我就可以上传我的所有提交。所以,这些是我遵循的步骤:
Production Server(Windows Server 2008)
开发(Windows 7 + Netbeans)
现在,我需要将我的开发项目上传到prod。首先,我要检查我指向的SSH默认目录是否为存储库:
$ git ls-remote ssh://user@server/
fatal: '/' 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.
我尝试添加文件夹名称," .git",foldername.git,所有内容,我收到同样的错误。
我在哪里遇到这个问题?先谢谢你。
P.S。我已经测试了新的默认目录,它指向服务器中的空存储库,因此它正在工作。
编辑:我试过这个:$ git ls-remote user@host:.git
user@host's password:
$_
我没有输出。那可以吗?
答案 0 :(得分:1)
您说服务器上的git存储库位于/
(例如,您应该有一个/.git
目录)。由于这可能不是真的,我建议你通过ssh
连接到服务器并运行pwd
(或它的Windows等价物)来找到你的主目录所在的位置,然后获取相对路径你的存储库。
比如说,如果在登录服务器后立即运行pwd
,则C:\users\my_user
并且您的git存储库位于C:\users\my_user\git\my_project
,请使用ssh://user@server:git/my_project
作为URL。 :
表示主目录的相对路径。
您也可以使用绝对路径,例如在ssh://user@server/c/users/my_user/git/my_project
中,或者Windows决定命名您的C:
分区:)
答案 1 :(得分:1)
当您使用ssh传输时,您的语法会尝试访问Copssh安装的根目录,例如:如果您在c:\ copssh安装了Copssh,那么您的根目录(/)就是同一个目录。
您的命令 git ls-remote ssh:// user @ server / 尝试访问该目录。
尝试类似
的内容git ls-remote ssh:// user @ server / home / user *(c:\ copssh \ home \ user)或
git ls-remote ssh:// user @ server / cygdrive / d / mygit 如果您的存储库位于d:\ mygit)
如果你们都想创建一个基于Windows的Git存储库,你可以考虑坚持使用功能齐全Gitwin的free edition。虽然这是Git on Cygwin并且免责声明:我是开发人员。