2

を実行するときgit fetch、リモートからローカルに転送されるオブジェクト/変更の正確なサイズを知るにはどうすればよいですか?

4

2 に答える 2

2

実際のネットワーク トラフィック サイズは、ローカルにあるもの、リモートから提供されるもの、およびデータの転送に使用するプロトコルによって異なります。

詳細についてはPro Git bookを参照してください。ただし、短いバージョンでは、「スマート」プロトコル (git://...またはssh://...) を使用してフェッチすると、現在不足しているリポジトリ オブジェクトを表すデルタ圧縮データを含む「シン パック」を取得できます。で要求したオブジェクトに対して圧縮しますfetch。「ダム」プロトコルを使用すると、それを取得できず、ルーズ オブジェクト (bzip2 圧縮) または「シック」パックのいずれかが取得されます。

オブジェクト自体の (圧縮されていない) サイズを見るだけでは、多くのことはわかりません。

于 2013-10-29T03:33:51.593 に答える
0

これが正しいかどうかは 100% 確信が持てず、おそらくもっと良い方法がありますが、次の方法を試すことができます。

git fetch --dry-run

これは、フェッチが実際に先に進まなくても何をするかを示すはずです。該当するリモート変更がある場合は、この情報が表示されます。たとえば、次のようになります。

(SHA1)..(SHA2)  master -> origin/master

次にcat-file、 size フラグを使用してコミットを検査できます。これは、必要な着信変更を表しているはずです。

git cat-file -s (SHA2)

返される量はバイト単位です。お役に立てば幸いです。

于 2013-10-29T03:08:00.173 に答える