24

基本的な問題は、私が

git pull upstream master

私は得る

remote: Counting objects: 172, done.
remote: Compressing objects: 100% (57/57), done.
remote: Total 119 (delta 45), reused 95 (delta 21)
      0 [main] git 8660 fork: child -1 - forked process 4520 died unexpectedly, retry 0, exit code -1073741515, errno 11
error: cannot fork() for index-pack: Resource temporarily unavailable
fatal: fetch-pack: unable to fork off index-pack

終了コードは毎回同じです。もちろん、オブジェクトの数はプロセスの数と同じです。Windows 7でsshを介してgithubに対して公開鍵認証を実行しています。これは、ssh-agentの有無にかかわらず発生します。私はこの問題を数か月間抱えており、Git Bash(MingW32)を実行するように切り替えることで、問題が発生するたびにこの問題を回避しています(これは、ほとんどの場合、一部のリポジトリでは発生しますが、他のリポジトリでは発生しない場合があります)。ただし、私は一般的にCygwin環境を好み、ほとんどのものをそこにセットアップしているので、それを強制された場合はドラッグになります。

しばらく前に私はこの投稿http://cygwin.com/ml/cygwin/2012-03/msg00025.htmlを見て、それを読んだ後、次にCygwinを更新したときに、その修正によって私の問題も修正されることを期待していました。そうではありませんでしたが、修正がリリースされたかどうかはわかりませんでしたが、今日また更新しました。

Web上のCygwingitのfork()に関連するエラーについての電子メールがたくさんあることに気づきましたが、プルの場合はありません。したがって、私の質問は、プルでこれを見たことがありますが、何が原因ですか?それが起こらないようにする方法はありますか(gitまたはcygwinにパッチを適用するか、他の実装コースを使用する以外に:))。

面白いことに、Web上で関連するCygwin/gitメールを見つけることができるエラーはまったく見られませんでした。

4

5 に答える 5

35

これはここで扱われます:http://cygwin.wikia.com/wiki/Rebaseall

つまり、すべてのウィンドウを閉じて、これを実行します。

C:\cygwin\bin\dash.exe -c '/usr/bin/rebaseall -v'

これにより、フォークに関連するすべての問題が修正されます。gitだけでなくemacsからのaspellのフォークに問題がありました。

于 2013-07-12T23:59:26.553 に答える
26

OK、共有する必要があると思います。同じ問題がありますが、回避策があります。問題はPATHの長さのようです。git pullを実行すると、フォークが失敗します。

$ gitpull*強調テキスト*
      2 [main] git 7384 fork:child -1-フォークされたプロセス7420が予期せず終了しました、再試行0、終了コード-1073741515、errno 11
エラー:rev-listのfork()はできません:リソースは一時的に利用できません
エラー:「gitrev-list」を実行できませんでした
リモート:オブジェクトのカウント:728、完了。
リモート:オブジェクトの圧縮:100%(456/456)、完了。
 907550 [main] git 7384 fork:child -1-フォークされたプロセス7436が予期せず終了しました、再試行0、終了コード-1073741515、errno 11
エラー:インデックスパックのfork()はできません:リソースは一時的に利用できません
致命的:フェッチパック:インデックスパックをフォークできません

ただし、gitを実行する前にPATHを非常に小さいものに設定すると、次のように機能します。

$ PATH = / usr / bin git pull
リモート:オブジェクトのカウント:728、完了。
リモート:オブジェクトの圧縮:100%(456/456)、完了。
リモート:合計464(デルタ337)、再利用9(デルタ6)
オブジェクトの受信:100%(464/464)、153.36 KiB、完了。
デルタの解決:100%(337/337)、107個のローカルオブジェクトで完了。
git://cmake.org/cmakeから

それがあなたの誰かのために働くかどうか私は興味がありますか?

于 2012-11-07T18:58:02.027 に答える
4

私も同じ問題に直面し、システムを再起動すると問題が解決しました。

于 2013-07-23T12:43:46.730 に答える
2

しばらく経ちましたが、MobaXtermアプリに組み込まれているcygwinプラットフォームを使用して、私自身の非常によく似た問題を検索していることがわかりました。存在しない髪を引っ張ってそれを理解しようとしていましたが、最終的には簡単な再起動で修正されました。

これが2台目のWindows10マシン、MobaXterm + gitアプリの新規インストール、およびgithubリポジトリからのプルの試行で機能することを二重に確認しました。同じエラー:「エラー:インデックスパックのfork()ができません:リソースが一時的に利用できません」が達成され、単純なコンピューターの再起動で修正されました。

于 2016-06-16T20:14:30.153 に答える
-3

PATH変数を設定したり、gitのフルパスを(1回)使用したりする代わりに、これも機能するはずです。

git=`which git`
git pull

これにより、gitが連続呼び出しのフルパスに割り当てられます。これで、gitを別のプログラム(makeなど)で使用すると、それが可能になります。

于 2013-08-28T04:50:48.790 に答える