所以,我似乎有一些真正的问题,建立msysgit。 我可以通过使用腻子连接到我的SSH目录
SSH://用户名@主机:端口
和我有正确的键。 我也可以做到通过此使用砰砰
砰砰-P PORT用户@主机-i /path/to/private_key.ppk
当我试图(通过TortiseGIT)或通过一个git的bash运行
混帐克隆SSH://用户名@主机:端口/路径/到/ myapp.git
我只是不停收到错误
初始化空Git仓库在d:/Git/myapp.git
警告:您似乎已经克隆了一个空库。
致命:远程端挂机意外
我已检查机器人/Git/setup.ini和TortiseGIT和使用都
C:\ Program Files文件\ TortoiseSVN的\ BIN \ TortoisePlink.exe
有谁知道它的驾驶我坚果我如何解决这个问题!
这是一个有点检查表:
- 是您试图连接到服务器上启用SSH?
- 安装在服务器上的GIT?
- 你有没有在服务器上的Git仓库建立?
- 是否库正确的权限,并在服务器上的配置已经启用sharedrepository?
你有没有在GIT正确的地方SSH密钥?
建议:
1:既然你可以连接使用腻子,看起来像SSH是设置好的。
2:使用腻子连接到服务器。 在类型git --version
你得到一个合理的回应? 如果没有,那么你就需要在服务器上安装它。
3:尝试在服务器上建立一个新的存储库。 假设其在* nix风格服务器使用腻子连接到服务器,并使用下面的命令使新的存储库,假设你有一个目录/ home / source_code。 回声线只是让文本的一点点文件,所以我们有东西开始。
cd /home/source_code
mkdir test_repo
cd /home/source_code/test_repo
echo "first file" > t.txt
git init
git add .
git commit -m "Initial Import"
所以,现在我们必须在这一个t.txt文件的存储。 作为一项规则,你不应该推到包含更改工作副本的储存库。 具有服务器上的存储库的目的是使人们可以推到这一切的时候。 我们做一个“裸”克隆这是唯一git的数据库,这种方式没有任何工作副本的变化可能性。 正是这种“裸”的克隆,我们将作为中央git仓库使用。
cd /home/source_code
git clone --bare test_repo/ test_repo.git
现在,您可以摆脱我们成立了临时存储库。
cd /home/source_code/
rm -rf test_repo
在本地计算机上尝试重新克隆
git clone ssh://user@host.com:port/home/source_code/test_repo.git
4:权限:这应该不会造成问题与克隆,获取或拉,除非你已经选择了,这并不具有读取访问资源库的位置。 如果你推回来时,得到一个权限被拒绝错误,那么请参考权限修正
5:设置为GIT公钥/私钥:
- 连接到用腻子服务器
- 在你的〜/ .ssh文件夹的权限:
chmod 700 .ssh
- 在你的〜/ .ssh / authorized_keys的设置权限:
chmod 600 authorized_keys
- 生成密钥
ssh-keygen -t dsa
- 接受它想使用的文件名
- 不要输入密码(只需输入)。 您将要重新使用密码后做到这一点。
- 添加酒馆关键authorized_keys文件:
cat id_dsa.pub >> .ssh/authorized_keys
- 编辑/ etc / SSH / ssh_config中并添加行
PubkeyAuthentication yes
- 重新启动ssh守护进程
sudo /etc/init.d/ssh restart
- 复制
id_dsa
和id_dsa.pub
从服务器到本地硬盘驱动器(使用WinSCP赋予或SFTP或一些这样的工具)C:\ Users \用户名\ .ssh目录(这是Vista的位置将是与其他版本有一点不同视窗) - 集龟混帐指向C:\ Program Files文件\的Git \ BIN \ ssh.exe(未腻子)
这两个命令行Git和乌龟混帐应设置工作。 试试你的本地计算机上再次克隆。
git clone ssh://user@host.com:port/home/source_code/test_repo.git
现在,您可能希望去重复设置了一个密码的钥匙....
您需要安装佳丽,并添加钥匙进去。
同时仔细检查你的GIT_SSH环境变量设置为使用砰砰
你试过从SVN-猛砸连接与SSH用户@主机:端口? 它是否直接连接或询问密码?
港口只需要如果您正在使用非标准端口的SSH,否则将默认为22,这是由腻子一回事,但要确保你可以从Git的bash的连接,因为它通常有自己的密钥存储在的.ssh关闭目录的用户目录。 如果你不能得到这从SVN-猛砸工作,你需要修复的关键或调试问题出在哪里,请尝试使用指定的关键
SSH密钥文件-i用户@主机:端口
如果不工作,或者会提示您输入远程计算机上的密码,它指的密钥交换工作不正常。 所以,你需要经过检查按键的设置适当至于Git的-猛砸环境。 特别是要确保您已经导出RSA密钥,而不是只用使用Git-猛砸PPK关键。 我不相信是支持的。 我不使用龟,Git的,所以我不能与帮助,但我不经常使用的Git猛砸。