我有一个已经安装了 git 的 Media Temple 服务器。如何从我托管在 GitHub 上的存储库中克隆文件?
1 回答
它可能类似于在 Media Temple 服务器上克隆 Unfundle 上托管的存储库(您可以在此处获得全面指南的过程)
Media Temple 部分涉及(假设您已经在本地机器上创建了 SSH 密钥对并将其添加到 GitHub):
这类似于在本地计算机上设置密钥,只是
.ssh
文件夹的路径有点不同。
它会根据您在 Media Temple 的托管计划而有所不同。我的是这样的:而不是
~/.ssh
,它是分配给/home/HOSTING_CODE/users/.home/.ssh
您HOSTING_CODE
的托管计划的 5 位数字。
ssh-keygen -1 rsa
执行“ ”命令后,您将知道路径是什么。它将在文件名提示中提及。注意:与本地注册机不同,远程服务器将要求您从根目录输入整个路径。
SSH 进入您的 Media Temple 服务器,然后继续。
以下命令将要求您输入文件名和密码。
如果您打算拥有多个密钥对(您可能在某个时候会这样做),那么最好以不同的方式命名它们。
因此,每次创建新密钥对时,请提供一个简短的描述性文件名。
对于 unfuddle,我使用 SUBDOMAIN 和“unfuddle”,所以对我来说它是“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退出,这将提示您保存缓冲区 (hit y),然后是文件名(默认为您使用 (config) 打开它的名称,然后点击return)
在 Media Temple 服务器上克隆 GitHub 存储库
SSH 进入您的 Media Temple 服务器,然后继续。
$ git clone gitRepoName@github.com:SUBDOMAIN/ABBREVIATION.git
如果在 GitHub 上找到公钥,系统将提示您输入密码。