私の場合BitBucketでは、ホストされているGitソリューションに10000を超えるコミットを持つ既存のSVNリポジトリ(トランクのみ)を移行しています。git pushで最大コミット数を設定するには
SVNリポジトリをローカルのGitに変換することは問題ありませんでしたが、今ではすべてのリビジョンを空のGitリポジトリオンラインにプッシュしたいと思います。
しかし、TortoiseGitからのプッシュをやって、それがこの出力を停止します。
git.exe push -v --progress "origin" master
Counting objects: 198817, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (83858/83858), done.
POST git-receive-pack (chunked)
Writing objects: 100% (198817/198817), 1.54 GiB | 460.00 KiB/s, done.
Total 198817 (delta 130510), reused 178506 (delta 112822)
fatal: The remote end hung up unexpectedly
fatal: The remote end hung up unexpectedly
error: RPC failed; curl 52 Empty reply from server
Pushing to https://[email protected]/__removed__/__removed__.git
Everything up-to-date
git did not exit cleanly (exit code 1) (3644609 ms @ 06.10.2016 11:16:23)
私は私の問題の唯一の解決策は一度に1000回のコミットをプッシュすることだと思います。しかし、サーバー上にまだ存在しない最初の1000個のコミットにはどのようにして制限できますか?
プッシュする各コミットを指定したくありません(this question answeredのように)。私は単に最大数を設定するだけです。
_ _「私は私の問題の唯一の解決策は一度に1000回のコミットをプッシュすることだと思う」:
完全を期すため、ここで一度にコミットの特定の番号をプッシュするスクリプトがありますあなたはそう思いますか? – 1615903
私のプッシュは大きすぎると思います。私はそれをより小さな部分でバッファリングしようとします。 –
私はそれが問題なのかどうかは分かりませんが、テストするのは簡単です。マスターのコミットの長いセットの近くでコミットを選択し、手動でプッシュします(もちろん、祖先がコミットする)、 'git push:master'。いくつかの迷惑なGUI(迷惑なコマンドライン対:-)からそれを行う方法、私は分かりません。 –
torek