- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个已经安装了 git 的 Media Temple 服务器。如何从我在 GitHub 上托管的存储库克隆文件?
最佳答案
这可能类似于在 Media Temple 服务器上克隆一个托管在 Unfundle 上的存储库(您有一个 comprehensive guide here) 的过程
Media Temple 部分涉及(假设您已经在本地计算机上创建了 SSH key 对并将其添加到 GitHub):
This is similar to the setting up the keys on your local machine except that the path to the
.ssh
folder is a bit different.
It will vary depending on the hosting plan you have with Media Temple. Mine was like this:Instead of
~/.ssh
, it was/home/HOSTING_CODE/users/.home/.ssh
whereHOSTING_CODE
is the 5 digit number assigned to your hosting plan.You'll know what the path is once you execute the "
ssh-keygen -1 rsa
" command. It will be mentioned at the filename prompt.NOTE: Unlike on the local keygen, the remote server will require you to enter in the entire path from root.
SSH into your Media Temple server then proceed.
The following command will ask you for a filename and a password.
If you intend to have multiple key pairs (which you probably will at some point), then it's best to name them differently.
So provide a short descriptive filename each time you create a new key pair.
For unfuddle I use the SUBDOMAIN and "unfuddle", so for me it's "myproject_unfuddle
". You'll be adding this to the.ssh/config
file in a minute.Also, while you CAN use an empty passphrase, you should always provide a password.
$ 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
The following will echo the public key to the screen. You'll need to copy this and paste it into unfuddle shortly.
$ 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
Next we'll need to add this key to the ssh config file. If you've never created the config file then it probably doesn't exist yet.
So open/create the config file:
$ pico /home/HOSTING_CODE/users/.home/.ssh/config
Once inside add the new entry:
$ IdentityFile /home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle
As you add additional keys you'll need to add them to the config file. This file basically tells the keychain which keys to look in when comparing the private and public keys you've generated.
Simply add new entries above or below the others:
$ IdentityFile /home/HOSTING_CODE/users/.home/.ssh/myproject_unfuddle
IdentityFile /home/HOSTING_CODE/users/.home/.ssh/some_other_key_name
Then hit CTRL-X to quit, which will prompt you to save the buffer (hit y) and then a file name (defaults to the name you opened it with (config) then hit return)
在 Media Temple 服务器上克隆 GitHub 存储库
SSH into your Media Temple server then proceed.
$ git clone gitRepoName@github.com:SUBDOMAIN/ABBREVIATION.git
You will be prompted for the password if the public key was found on GitHub.
关于git - 在 Media Temple 服务器上克隆一个 git repo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2428910/
采用这个 repo 结构: Server (main repo) ProjectA (subrepo) SharedLibrary (subrepo) Client (main rep
我们正在尝试使用 https://grails.org/plugin/jms用于 jms 集成。但我们无法解决它。 环顾四周,我能够验证它是否存在于这个 repo 中: http://repo.gra
是否可以在现有的 Mercurial 存储库中创建 Mercurial 存储库? 这个想法是将存储库的子目录作为不同的存储库进行处理,你是如何做到的? 我不是在谈论子存储库(至少,如果我理解子存储库的
这个问题在这里已经有了答案: How do I work with a git repository within another repository? (5 个答案) 关闭 6 年前。 我想克隆
我在尝试让 ssh 在 GIT 中工作时犯了一个灾难性的错误。 我实际上将错误的 url 从服务器复制到该存储库的配置文件中。因此,我放入配置文件的 url 是一个不同但名称相似的 repo。 现在,
我们在 github 上有数百个不再使用的存档库。 默认情况下,Github 上没有 stash 存档仓库的选项。目前,通过 active repos 是不友好的,尤其是在 github 上大量滚动。
在 .repo文件: [centos] name=centos7.2 baseurl=http://10.0.0.1/centos7.2/7.2/xxx/x86_64/ enabled=
一位同事使用 repo start 创建了功能分支 thebranch。现在我想检查这个分支并对其进行处理。我试试这个: repo init -u git@gitserver:manifest.git
我在github上托管了一个项目,结构如下 github.com/example/allpackages . ├── .git └── packages ├── example-1 ├
我在github上托管了一个项目,结构如下 github.com/example/allpackages . ├── .git └── packages ├── example-1 ├
我们可以使用 hg in -vp 将我们的本地仓库与主仓库进行比较。 如何在视觉上做到这一点?我们使用 ExamDiff extension作为我们的 Mercurial 视觉差异工具。我们认为有一种
我有一个 repo 镜像服务器 (myrepo),最初创建它是为了镜像和与远程同步(repoA)。也就是说,我使用了类似下面的东西来创建它。 cd myrepo repo init -u git://
我镜像了https://github.com/boostorg/boost.git使用命令到我自己的存储库: git clone --recursive https://github.com/boos
来自 Viewing Unpushed Git Commits我知道如何区分我自己的 repo 和本地提交: git diff origin/master..HEAD 但是,我怎样才能使用 path/
我已将我的应用程序源 (git repo) 存储在文件夹中: MyProject/front_app 但在 GitHub 上,我希望将存储库命名为 front_app 而不是 my_project_f
我有一个 repo1和 repo2在本地机器上。它们非常相似,但后者是某种其他分支(不再维护 repo1)。 /path/to/repo1 $ git log HEAD~5..HEAD~4 Add:
我在 Mac OS X (10.7.3)、x64 Intel 上更新我的 Android 源代码树时遇到问题。代码是根据 Downloading the Source Tree 安装的, 并且 SE
我有两个位于不同服务器上的存储库,分别称为 repo-1 和 repo-2。 开始两个“树干”是平等的: repo-1/trunk == repo-2/trunk 与此同时,正在向 repo-1/tr
我大约在 6 个月前加入,当我到达时,我的团队没有使用任何形式的版本控制。我已经说服 mgmt 在新项目中使用 Mercurial,所以我们在我们的网络服务器上有以下结构: -MainFolder (
我正在尝试从包含通常结构(分支、标签和主干)的 repoA 迁移到仅在主干中具有子文件夹的现有 RepoB,该 RepoB 在分支、标签和主干中具有项目和代码。 我有一个通过代码创建的转储文件: sv
我是一名优秀的程序员,十分优秀!