在单个PC中为github和bitbucket添加SSH密钥

时间:2015-04-19 02:48:21

标签: github bitbucket

是否可以在个人电脑中同时使用github和bitbucket repo。

如果没有,让我知道任何其他可能性。

提前致谢。

5 个答案:

答案 0 :(得分:4)

是的。您可以从每个存储库配置文件告诉git远程代码所在的位置。如果你愿意,你甚至可以从同一个存储库推送到GitHub和Bitbucket。

请点击此处了解更多详情: http://blog.lckymn.com/2013/03/11/git-push-to-pull-from-both-github-and-bitbucket/

一个重要部分将通过SSH分别连接到每个部分。

您的SSH密钥应该位于$HOME/.ssh,并且可以包含任意数量的密钥。 SSH密钥的默认名称是id_rsa(或类似,具体取决于用于创建它的协议)。

尝试做:

ls $HOME/.ssh

......看看那里有什么。

我做的就是你自己和我的问题,它会带来类似的东西:

github-personal
github-personal.pub
bitbucket-work
bitbucket-work.pub
known_hosts

其中known_hosts是一个文件,其中包含我连接的服务器列表以及与之关联的公钥。以.pub结尾的其他文件是我自己的公钥,其余的是我的私钥。

通过遵循相应的教程,您可以获得GitHub和Bitbucket密钥:

答案 1 :(得分:0)

肯定是。您可以先生成ssh密钥对,查看How to generate,然后转到.ssh目录,复制id_rsa.pub的内容,然后粘贴到您的github或bitbucket ssh设置区域。

答案 2 :(得分:0)

我使用Sourcefree Desktop Application和My Gitbash提示符 将我的项目同时推送到Bitbucket和Github存储库 以下是我的所作所为

右键单击打开要推送的文件夹的bash shell 首先你需要创建密钥,我会建议使用相同的ssh密钥

创建密钥 ssh-keygen -t rsa -C" your_email@example.com"

转到文件夹目录 右键单击并单击git bash 然后一个接一个地运行下面的命令 git init git add。 git commit -m" first"

打开您的sourcefree桌面应用 点击+打开你的本地 回购文件 在bitbucket上创建回购 然后单击repo图标 然后单击repo图标添加 名称:originbit url:"您创建的回购链接"

对于你的bitbucket,你必须同时使用它们 如果你想使用公共ssh密钥和私有ssh密钥 公共和私人存储库

使用之前创建的ssh密钥 转到sourcefree App的TOOLS图标 单击加载选项卡 然后用.ppk扩展名重新保存 保存与私钥和公钥相同的密钥 在同一目录中 不要输入passhrase以避免困难 保存它。

这样它就可以加载到选美图标

创建新密钥 转到sourcefree的TOOLS图标 然后单击create ssh key 将底部数字更改为2048 但如果你无法改变它 首先创建一个新密钥,然后将鼠标拖动到提供的列上 以曲折的方式或任何形式创建。 将1048更改为2048,以便可以在bitbucket ssh中接受它 然后重新创建一个新密钥 然后将其保存为公钥和私钥

为Pageant添加密钥(查看此Pageant密钥图标的桌面通知) 添加私有ssh密钥和ssh公钥

转到您的bitbucket帐号 并添加两个ssh键的内容 用不同的名字命名

回到bash shell

git状态 git add -A git pull originbit master git commit -m"修改代码" git push originbit master

在github上创建repo 打开Sourcefree桌面应用程序 复制repo url 然后单击repo图标 然后单击repo图标添加 然后推送Sourcefree

答案 3 :(得分:0)

是的,可以在个人计算机中同时使用github和bitbucket存储库。

您可以设置多个SSH配置文件。

  • 首先生成您的SSH密钥 要生成第一个密钥, 从您的根文件夹cd〜/ .ssh ssh-keygen f personal_key,然后输入您选择的密码。 要生成第二个密钥, ssh-keygen f personal_key,然后输入您选择的密码。
  • 第二,创建您的已知主机文件 要创建已知的主机文件,请执行以下操作: touch known_hosts -第三创建您的配置文件 创建配置文件 touch config,thenit看起来像这样

#Personal account Host bitbucket.org HostName bitbucket.org User git IdentityFile ~/.ssh/id_rsa UserKnownHostsFile ~/.ssh/known_hosts IdentitiesOnly yes

-然后将您的SSH密钥添加到bitbucket。转到bitbucket,设置,然后转到SSH密钥     pbcopy < id_rsa.pub(用于复制密钥)并将其粘贴到bitbucket

答案 4 :(得分:0)

在单个PC上为github和bitbucket添加SSH密钥的完整指南

如果您已经有一个ssh密钥,那么.ssh文件夹中必须有2个文件public(id_rsa.pub)和Private key(id_rsa)。您可以跳过步骤2

步骤1。在执行步骤2和步骤3之前,准备两个帐户都需要的默认身份

确定您的Git克隆URL。 $ git remote -v

origin git@bitbucket.org:teamsinspace/bitbucketspacestation.git (fetch)
origin git@bitbucket.org:teamsinspace/bitbucketspacestation.git (push)

使用<username>@bitbucket.org替换git@bitbucket.org,以您的Bitbucket用户名更新远程URL。 对于此步骤及其后的步骤,请输入您的用户名代替。

$ git remote set-url origin <username>@bitbucket.org:teamsinspace/bitbucketspacestation.git

第2步:使用默认名称(id_rsa)创建第一个ssh密钥

$ ssh-keygen

您将看到以下文本:

Generating public/private RSA key pair.
Enter file in which to save the key (/home/username/.ssh/id_rsa):

您可以输入密码来保护文件,也可以按Enter键执行所有步骤,然后它将创建一个ssh密钥。

After you keep pressing enter

默认情况下,系统将所有身份的密钥添加到/Users/<username>/.ssh目录

您可以通过以下命令检查现有的ssh密钥

$ ls ~/.ssh

id_rsa  id_rsa.pub      

其中应该有两个文件,其中一个文件名为密钥(id_rsa)私钥,第二个文件具有相同的(ir_rsa.pub)公钥。

您可以在主目录中打开ctrl + h以使其可见 然后会显示

enter image description here

第二,如果还没有,请创建您的已知主机文件

要创建您的已知主机文件, touch known_hosts

步骤3:设置多个帐户ssh

3.1:使用默认名称创建第二个密钥

您现在可能正在使用一个SSH密钥对来处理公司的内部项目,但是您可能需要用于访问客户端服务器的其他密钥,以便您可以创建密钥

再次运行相同的命令ssh-keygen,它将创建名称为[ id_rsa2 and id_rsa2.pub ]的第二个ssh密钥文件

3.2:使用自定义名称创建第二个键

ssh-keygen -f NAME_OF_YOUR_KEY

$ ssh-keygen -f work_key将创建2个文件 [ work_key, work_key.pub ]

如果要一次运行一个键,则可以在连接到该存储库进行拉动和推送之前使用此命令。

ssh-add -K ~/.ssh/YOUR_KEY_FILE

ssh-add -K ~/.ssh/work_key

第4步:同时设置两个帐户

您要同时设置两个帐户,则必须使用以下命令

第三创建您的配置文件 创建配置文件 touch config或直接在任何文本编辑器中打开,

以下是一个Github和一个Bitbucket帐户的示例

主机:您可以指定自定义名称的ssh设置的名称 HostName:github域或bitbucket域 IdentityFile:ssh文件的路径

#Work account 
Host pers 
    HostName github.com 
    User git 
    IdentityFile ~/.ssh/id_rsa 
    UserKnownHostsFile ~/.ssh/known_hosts 
    IdentitiesOnly yes

#Personal account 
Host work 
    HostName bitbucket.org 
    User git 
    IdentityFile ~/.ssh/work_key 
    UserKnownHostsFile ~/.ssh/known_hosts 
    IdentitiesOnly yes

第5步:将公共密钥添加到Bitbucket或github帐户 对于Bitbucket enter image description here 对于Github enter image description here

第6步:永久添加您的公开名单

ssh HOST(我们在配置文件中写的内容) 喜欢 ssh work

如果遇到此错误,请确保正确执行了步骤4。

git@bitbucket.org: Permission denied (publickey).

或者也可以使用这种方式

现在您可以使用

git clone `git@pers/project.git`
git clone `git@work/project.git`

enter image description here

第7步:自动选择我们需要的域名

一旦需要使用第二个密钥,管理SSH密钥就会变得很麻烦。传统上,您将使用ssh-add将密钥存储到ssh-agent,并为每个密钥输入密码。问题在于,每次重新启动计算机时都需要执行此操作,这很快就会变得乏味。

如果您只有两个帐户,而github中有一个帐户,而bitbucket中有一个帐户,则可以使用以下方法自动选择我们需要的域名

#Work account 
Host github.com  
    HostName github.com 
    User git 
    IdentityFile ~/.ssh/id_rsa 
    UserKnownHostsFile ~/.ssh/known_hosts 
    IdentitiesOnly yes

#Personal account 
Host bitbucket.org 
    HostName bitbucket.org 
    User git 
    IdentityFile ~/.ssh/work_key 
    UserKnownHostsFile ~/.ssh/known_hosts 
    IdentitiesOnly yes

此处是指向其进一步指导的链接

https://www.freecodecamp.org/news/the-ultimate-guide-to-ssh-setting-up-ssh-keys/ https://support.atlassian.com/bitbucket-cloud/docs/set-up-additional-ssh-keys/