GitネイティブプロトコルとSSHプロトコルの違い

SSHプロトコル(ssh://)を使用するか、Git (git://)プロトコルを使用してプッシュするかのパフォーマンスに違いはありますか?

もし私がGitを使いたいのであれば、git server dameonをセットアップしてそのポートをiptablesで開く必要はありませんか? SSHがすでにセットアップされ、動作しているときに、たくさんの余分な作業や、ダメモンの追加メモリ使用量のようです。

GitHubはssh://の代わりにそれを使用するため、ネイティブのgit://プロトコルを使用する利点があります。

3
ここにいくつかの情報があります: progit.org/book/ch4-1.html
追加された 著者 zoran119,
ありがとうございます。
追加された 著者 Justin,

2 答え

まず第一に、GitHubはsshをメインプロトコルとして使用し、読み取り専用アクセスはgitプロトコルを介して行われます。

git://は、暗号化と認証のオーバーヘッドがないため、プロジェクトをクローンする最速の方法です。しかし、それ以外の場合は、ssh://とgit://の両方でトランスポートに同じgit固有の最適化が適用されます。そのため、GitHubを含む多くのプロジェクトで、git://を読み取り専用アクセスに、sshをプッシュするために使用しています。

あなたの質問に答えるために、git://はプッシュに使用されないので、ssh://はプッシュするのに最適です。

5
追加された

SSHプロトコル(ssh://)またはGit(git://)プロトコルを使用してプッシュする際のパフォーマンスの違いはありますか?

もちろんsshの暗号化があります。

Gitを使いたいのであれば、git server dameonをセットアップしてiptablesでそのポートを開く必要はありませんか?

選択したプロトコルによって異なります。あなたは通常、プッシュが認証される(そして認証が暗号化される)ことを望むので、本質的にgit-nativeプロトコルを実行するのでsshの機能は一般的に使用されますが、sshトンネルを介して使用されます。 (Implの詳細:git-daemonとgit-pushの両方でsshがgit-receive-pack subutilityを生成する)

git-daemonサービスは通常、ここでは認証も暗号化も必要ないため、読み取り専用の匿名アクセス用に提供されています。

0
追加された