43

私は GitKraken を見つけました。これはクールに見えます。SourceTree とは異なり、index.lock で問題が発生することはありません。唯一の問題は、別の部屋にあるサーバーにプッシュおよびプルできないことです。私は自分のsshキーを設定しました。github/bitbucket アカウントにプッシュ/プルできますが、次の部屋にはできません。このような問題に遭遇したことがある場合、または私の問題を解決する方法について少し考えがある場合は、お知らせください。すでにサポートチームと連絡を取りましたが、応答が非常に乏しいです。

4

13 に答える 13

1

私は複数のプロジェクトと ID の鍵をたくさん持っており、それらを別の場所で追跡したり参照したりする必要はありません~/.ssh/config~/.gitconfig

これまでのところ、実用的な答えのほとんどは、私のキーと定義を入れてから、参照/呼び出しを追加する必要があり、どちら~/.ssh/configも理想的ではありません。ssh-add -K ~/.ssh/...~/.bash_profile~/.profile

すべてのキーとサブフォルダーをドロップイン~/.bash_profileおよび/または~/.profile反復処理する関数を作成しようとしていた~/.ssh/*/...ので、少なくともそこに新しいキーを追加することを覚えておく必要はありません。

次に、ssh-agent に自動的に追加したい資格情報に対して追加の命令を追加するだけでよいこの美しいアプローチを見つけました。AddKeysToAgent yes~/.ssh/config

Host *
  AddKeysToAgent yes
  UseKeychain yes
  IdentityFile ~/.ssh/[your-secure-ssh-key-name]

注:ssh-add -K ~/.ssh/[your-secure-ssh-key-name]これには、パスワードをキーチェーンに保存するために少なくとも 1 回実行する必要があります。それ以外の場合は省略できUseKeychain yes、キーを使用するときにパスワードの入力を求められます。

これは再起動後も持続し、CLI や GitKraken などのアプリで「魔法のように動作」します。

UseKeychain yesキーにパスワードがない場合もこの命令は省略できます。この命令をすべてのホストに適用する必要はありません。同じプロバイダーによってホストされている複数のプロジェクトをキャプチャするために、サブドメイン ワイルドカードを使用した特定のホストの例を次に示します。

Host project1.myrepo.com
 User git
 PreferredAuthentications publickey
 IdentityFile ~/.ssh/myrepo.com/project1
 AddKeysToAgent yes
 UseKeychain no

Host *.myrepo.com
 User git
 PreferredAuthentications publickey
 IdentityFile ~/.ssh/myrepo.com/[your-secure-ssh-key-name]
 AddKeysToAgent yes
 UseKeychain yes

Host git-codecommit.*.amazonaws.com
 User ABC1234DEFGHI1234
 IdentityFile ~/.ssh/[your-secure-ssh-key-name]
 AddKeysToAgent yes

Host *
  AddKeysToAgent no
  UseKeychain no
  IdentityFile ~/.ssh/id_rsa
于 2020-11-24T14:10:59.990 に答える
0

すべての答えを試した後、後で問題が発生したときに機能しなかったものも含めて、問題が SSH キーに関連しているのではなく、GitKraken UI の特定のオプションに関連していることに気付きました (執筆時点の最新バージョン: 7.3.2 )

SSH キーを正常に追加した場合でも、次のオプションを使用してクローンを作成しようとすると、[ファイル] > [リポジトリのクローン] > [URLを使用してクローン (SSH または HTTPS を使用)] を使用すると、次のエラーが発生します。

Clone Failed
C:\path-to-folder Conf‌igured SSH key is invalid. Please conf‌irm that it is properly associated with your Git provider.

ただし...次のオプションで機能します: File > Clone Repo > Bitbucket.org > Repository to Clone (アカウント内のリポジトリの 1 つを選択)

Successfully cloned repo 'my_repo'

URLオプションを使用してクローンを作成する必要はありませんか?

しかたがない...

于 2020-09-14T23:23:33.950 に答える