我从我的Github帐户克隆了一个git存储库到我的电脑.
我想使用我的PC和笔记本电脑,但有一个Github帐户.
当我尝试使用我的PC从Github推送或拉出时,它需要用户名和密码,但在使用笔记本电脑时则不需要!
每次与原点交互时,我都不想输入用户名和密码.我在这里缺少什么?
也许是一个相当不寻常的情况,但我想指定一个私有SSH密钥,以便在从本地计算机执行shell(git)命令时使用.
基本上是这样的:
git clone git@github.com:TheUser/TheProject.git -key "/home/christoffer/ssh_keys/theuser"
Run Code Online (Sandbox Code Playgroud)
甚至更好(在Ruby中):
with_key("/home/christoffer/ssh_keys/theuser") do
sh("git clone git@github.com:TheUser/TheProject.git")
end
Run Code Online (Sandbox Code Playgroud)
我见过使用Net :: SSH连接到远程服务器的示例,它使用指定的私钥,但这是一个本地命令.可能吗?
这对某些人来说可能是一个非常简单的问题:)
我在Amazon EC2上创建了一个新的linux实例,并且作为其中一部分下载了.pem文件以允许我进入SSH.
当我试图ssh:
ssh -i myfile.pem <public dns>
Run Code Online (Sandbox Code Playgroud)
我有:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for 'amazonec2.pem' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: amazonec2.pem
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
在这篇文章之后我尝试chmod +600 pem文件,但现在当我ssh我得到:
Permission denied (publickey).
Run Code Online (Sandbox Code Playgroud)
我在这里做的男生错误是什么?.pem文件位于我的主文件夹中(在osx中).它的权限如下所示:
-rw-------@ 1 mattroberts staff 1696 19 Nov 11:20 amazonec2.pem
Run Code Online (Sandbox Code Playgroud) authentication permissions ssh amazon-ec2 amazon-web-services
我在Mac Snow Leopard上,我刚刚安装完毕git.
我刚试过
git clone git@thechaw.com:cakebook.git
Run Code Online (Sandbox Code Playgroud)
但这给了我这个错误:
Initialized empty Git repository in `/Users/username/Documents/cakebook/.git/`
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
我也尝试过ssh-keygen没有passphase,但仍然是同样的错误.
当我克隆存储库时,我一直在"忍受"Github总是询问我的用户名和密码.我想绕过这一步,因为这是我工作流程中的一个烦恼.
我尝试使用本指南设置SSH密钥(我成功完成了).https://help.github.com/articles/generating-ssh-keys我成功了.
我的问题是,在克隆存储库时(使用SSH),我仍然被要求输入我的github密码和密码.我的理解是,在设置了这个SSH密钥后,我不再需要这样做了.
我有点不确定要问什么,所以我只是陈述我的目标.
我希望能够克隆存储库而无需一直输入我的Github信息.
我的SSH密钥丢失了什么?如果有人可以提供一些指导或资源,我会很感激,因为在GitHub中进行SSH身份验证时,我总是感到有些失落.
据我所知,这是一个测试事情是否正常工作的命令,这是我控制台的输出:
~ $ ssh -T git@github.com
Saving password to keychain failed
Enter passphrase for key '/Users/MYNAME/.ssh/id_rsa':
Hi MYNAME! You've successfully authenticated, but GitHub does not provide shell access.
Run Code Online (Sandbox Code Playgroud)
当我输入密码时,首先应该失败吗?然后,当我输入我的密码时,它会通过.
我有一个应用程序,使用Git执行各种有趣的东西(如运行git clone和git push),我正在尝试停靠它.
我遇到了一个问题,虽然我需要能够在容器中添加SSH密钥以供容器"用户"使用.
我尝试将其复制/root/.ssh/,更改$HOME,创建一个git ssh包装器,但仍然没有运气.
这是Dockerfile供参考:
#DOCKER-VERSION 0.3.4
from ubuntu:12.04
RUN apt-get update
RUN apt-get install python-software-properties python g++ make git-core openssh-server -y
RUN add-apt-repository ppa:chris-lea/node.js
RUN echo "deb http://archive.ubuntu.com/ubuntu precise universe" >> /etc/apt/sources.list
RUN apt-get update
RUN apt-get install nodejs -y
ADD . /src
ADD ../../home/ubuntu/.ssh/id_rsa /root/.ssh/id_rsa
RUN cd /src; npm install
EXPOSE 808:808
CMD [ "node", "/src/app.js"]
Run Code Online (Sandbox Code Playgroud)
app.js 像git一样运行git命令 git pull
我在使用两个不同的SSH密钥/ GitHub帐户以便一起玩时遇到一些麻烦.我有以下设置:
Repos可从一个帐户使用 git@github.com:accountname
Repos可从其他帐户使用 git@github.com:anotheraccount
每个帐户都有自己的SSH密钥.已添加两个SSH密钥,我已创建配置文件.我不相信配置文件是正确的.我不太确定如何指定使用的repos git@github.com:accountname应该使用id_rsa并且git@github.com:anotheraccount应该使用id_rsa_anotheraccount.
我有一个站点作为远程Git repo从Bitbucket.com使用SSH别名拉.我可以在我的服务器上手动启动ssh-agent,但每次通过SSH登录时都必须这样做.
我手动启动ssh-agent:
eval ssh-agent $SHELL
Run Code Online (Sandbox Code Playgroud)
然后我添加代理:
ssh-add ~/.ssh/bitbucket_id
Run Code Online (Sandbox Code Playgroud)
然后它出现在我做的时候:
ssh-add -l
Run Code Online (Sandbox Code Playgroud)
我很高兴去.有没有办法自动化这个过程,所以我不必每次登录都这样做?服务器正在运行RedHat 6.2(Santiago).
尝试git clone git://github.com/ry/node.git不起作用的东西会导致:
Initialized empty Git repository in /home/robert/node/.git/
github.com[0: 207.97.227.239]: errno=Connection timed out
fatal: unable to connect a socket (Connection timed out)
Run Code Online (Sandbox Code Playgroud)
但是,通过HTTP克隆工作正常.到目前为止,我已经收集到这是协议的问题,但我正在尝试安装需要命令的cloud9
git submodule update --init --recursive
它试图使用git://协议并失败.有没有办法改变命令的工作方式?
我正在使用git bash.我必须使用
eval `ssh-agent.exe`
ssh-add /my/ssh/location/
Run Code Online (Sandbox Code Playgroud)
每当我开始新的git bash时.
有没有办法永久设置ssh代理?或者Windows有一个很好的方法来管理ssh密钥?
我是新手,请给我详细的教程,谢谢!