web-dev-qa-db-ja.com

非標準ポートを使用したWindowsでのGitoverSSHのセットアップ

Adobe Suiteをフルスピードで使用できるように、Ubuntuから切り替える必要がありましたが、WindowsのSSHはLinuxのSSHほど統合されていないことがわかりました。

だから私は msysgitPuTTY をインストールしましたが、gitがSSH用のPuTTYの使用に問題があることがわかりました。 (私はWindowsパスにmsysgitをインストールし、plinkを使用しました)。

次のような/.ssh/configファイルを使用して、gitプロジェクトのリモートを非標準ポートのサーバーに追加しようとしています。

Host 255.255.255.255
Port 22222

次に、データをgitリポジトリに追加します。

git remote add Origin [email protected]:~/git/repo

しかし、プッシュしようとするとエラーメッセージが表示されます。

$ git Push Origin master
FATAL ERROR: Network error: Connection refused
fatal: The remote end hung up unexpectedly

そこで、gitコンソールからSSHを使用してみました。

ssh [email protected]

これにより、秘密鍵のパスフレーズ(これはありません)の入力を求められます。失敗すると、SSHユーザーパスワード(機能します)の入力を求められます。

パスワードでSSHログインを無効にするので、キーを正しく使用するにはgitが必要です。

4
Xeoncross

同様のワークフローがありますが、Gitosisを使用してVPSのリポジトリを管理しています。

上記で提案したように、Windowsパスとplinkでmsysgit bashを使用しますが、さらに pagent を使用してSSHキーを管理します。

私のリポジトリにアクセスするために、これは私が取る順序です、

  • Pagentを開き、私のキーにアクセスします(パスフレーズを持っている場合は、ここに1回だけ入力します。パスフレーズを入力しても、セッション全体でそれを記憶します)。
  • 次に、Git bashを開き、通常どおりadd/commit/Push/pull/cloneします。

注意すべき点の1つは、Git bashで作成したキーをPuTTY Gen(上記の同じリンクから入手可能)を使用して変換し、Pagentで使用できるようにする必要があることです。

2
seanl

接続文字列を正しく指定していませんでした。

$ git remote add test ssh://[email protected]:22222/~/git/repo

また、キーを管理するためのpagentを実行していませんでした。 ;)

1
Xeoncross

そのキーにパスフレーズがないことを受け入れることができる場合は、パスフレーズを削除できます...それ以外の場合 この質問 はいくつかのガイダンスを提供する可能性があります。

0
Andrew