我有一台已经安装了git的Media Temple服务器。如何从我在GitHub上托管的存储库中克隆文件?
答案 0 :(得分:5)
可能类似于在Media Temple服务器上克隆Unfundle上托管的仓库(您有comprehensive guide here)的流程
Media Temple部分涉及(假设您已在本地计算机上创建了SSH密钥对并将其添加到GitHub):
这与在本地计算机上设置密钥类似,只是
.ssh
文件夹的路径略有不同。
具体取决于您与Media Temple的托管计划。我是这样的:而不是
~/.ssh
,而/home/HOSTING_CODE/users/.home/.ssh
是HOSTING_CODE
是分配给您的托管计划的5位数字。执行“
ssh-keygen -1 rsa
”命令后,您将知道路径是什么。它将在文件名提示符处提及。注意:与本地keygen不同,远程服务器将要求您从root输入整个路径。
SSH进入Media Temple服务器然后继续。
以下命令将询问您的文件名和密码。
如果您打算拥有多个密钥对(您可能会在某些时候使用它),那么最好以不同方式命名它们。
因此,每次创建新密钥对时,请提供简短的描述性文件名 为了解开,我使用SUBDOMAIN和“unuddle”,所以对我来说它是“
myproject_unfuddle
”。您将在一分钟内将其添加到.ssh/config
文件中。此外,虽然您可以使用空密码,但您应始终提供密码。
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
$ Enter file in which to save the key (/home/HOSTING_CODE/users/.home/.ssh/id_rsa):
[provide a filename] <- create a short descriptive filename
[ie - myproject_unfuddle]
$ Enter passphrase (empty for no passphrase): [password] <- always use a password
$ Enter same passphrase again: [password confirmation]
$ Your identification has been saved in
/home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle.
$ Your public key has been saved in
/home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle.pub.
The key fingerprint is:
46:1b:99:56:77:0b:38:1e:35:92:de:94:58:b4:f3:d4 user@machine
以下内容将回显屏幕的公钥。你需要复制它并很快将其粘贴到unfuddle中。
$ cat /home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle.pub<
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwIuZA6ca9I1E2c6j1lbqvzDpZD2XQ5dRGVjeby1SGX+6
tyjA1zcN9mim9DXOWiX1wyUwnQdNR3qmzJwjlX1riLpXoEutZxRHsvWyeQFsrWM8B5rJk0U0HDEEH+/9
u0SjGZZq0ERZE+L999ZzAYp7voxD7L7zFqp+odqNMpLln4A98JTBI50q5tVBQBbkh8wXHKPI0xLB1N9u7
VCLB8zrR7/SC73/t3XicnhmaaPL8R+9GKyfRtjxAWyRGZiG+A9ZDXgQ9m6kNP2xS3AFi2jRvHfH2tnmy
+KD80sn9hwqTIMANVr2FjVloBHmi+FIHeL9qFbdI/4DCJMHt/hEdAw== user@machine
接下来,我们需要将此密钥添加到ssh配置文件中。如果你从未创建配置文件,那么它可能还不存在。
所以打开/创建配置文件:
$ pico /home/HOSTING_CODE/users/.home/.ssh/config
进入内部后添加新条目:
$ IdentityFile /home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle
当您添加其他密钥时,您需要将它们添加到配置文件中。此文件基本上告诉钥匙串在比较您生成的私钥和公钥时要查看哪些键。
只需在其他条目的上方或下方添加新条目:
$ IdentityFile /home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle
IdentityFile /home/HOSTING_CODE/users/.home/.ssh/some_other_key_name
然后按 CTRL - X 退出,这将提示您保存缓冲区(点击 y )然后再保存文件名(默认使用(config)打开它的名称然后点击 return )
克隆Media Temple服务器上的GitHub存储库
SSH进入Media Temple服务器然后继续。
$ git clone gitRepoName@github.com:SUBDOMAIN/ABBREVIATION.git
如果在GitHub上找到了公钥,系统将提示您输入密码。