web-dev-qa-db-ja.com

1台のマシンでGitHubとGitLabを使用することは可能ですか?

GitHubおよびGitLabにアカウントを持っています。 RSAキーを生成してGitLabのアカウントに追加しましたが、2つ目のプロジェクトでGitHubを使用する必要があります。

GitLabとGitHubはどちらもgitを使用していることは知っています。 1台のマシンでGitHubとGitLabを使用できるかどうか教えてください。

19
Matz Heri

はい、できます。両方で同じキーを共有するか(sshキー)、gitサーバーごとに新しいキーを作成できます。

SSH構成ファイルを作成する

複数のIDファイル(あなたの場合はgitlab用とgithub用)がある場合、SSH構成ファイルを作成してさまざまなIDを保存します。

この例で使用するエイリアスエントリの形式は次のとおりです。

Host alias 
  HostName github.com 
  IdentityFile ~/.ssh/identity

2つのID(workidとpersonalid)の構成ファイルを作成するには、次のようにします。

Open a terminal window.
Edit the ~/.ssh/config file. 

設定ファイルがない場合は、作成してください。
たとえば、IDの組み合わせごとにエイリアスを追加します。

Host github
HostName github.com 
IdentityFile ~/.ssh/github

Host gitlab
HostName gilab.com 
IdentityFile ~/.ssh/gitlab

このようにして、異なるsshキーが接続されたアカウントをいくつでも持つことができます。

21
CodeWizard

そのとおり!トランスポートとしてsshを使用しているので、半分の作業を完了しました。

GitHubとGitlabはどちらもリモート(中央)リポジトリです。すべては、コミットのプッシュに使用しているremoteに依存します。

GitHubでプロジェクトを作成し、それを複製した場合、リモート(デフォルトではOrigin)がGitHubリンクを指していることがわかります。実行$ git remote -v検査するプロジェクトディレクトリ内。

同じプロジェクトをGitLabにプッシュしたい場合は、別のremoteを別の名前で追加するだけです。

$ git remote add <different-remote-name> <gitlab-remote-link>

特定のリモコンを更新したいときはいつでも、プッシュしてください。

8
Avin D'Silva

2つの異なる方法を使用するには、両方のGitサーバー(Bitbucket、Gitlab、またはGithub)にSSHキーを追加し、資格情報を使用してgitを構成する必要があります。両方のアカウントが同じメールアドレスを使用している場合、使用できます:

git config --global user.name "Your Name"
git config --global user.email "[email protected]"

アカウントで異なるメールを使用する場合は、各リポジトリをローカル設定でセットアップファイルする必要があります

git config --local user.name "Your Name"
git config --local user.email "[email protected]"

ローカル構成はグローバル構成を上書きします。そのため、最もよく使用されるアカウントのグローバル構成を使用できます。

3
Antonio Araujo