3

emacs ( https://github.com/dhaley/dot-emacs ) のドットファイル構成をインストールしようとしています。私は指示されたようにすべて行いました(brewを介してemacsのmacportをダウンロードしてインストールし、レポジトリのクローンを作成します)、コマンドgit submodules update --initを使用すると、次のエラーが表示されます:

$git submodule update --init
fatal: reference is not a tree: a2bcba9a92873900055dcaff640e4d31a650947e
fatal: reference is not a tree: 05f9cebc64842efa2968d49adb08330d15c7ffe8
fatal: reference is not a tree: 89611c7a6947787bf2f591e64e22b7444ea5ed41
Unable to checkout 'a2bcba9a92873900055dcaff640e4d31a650947e' in submodule path 'override/bbdb'
Unable to checkout '05f9cebc64842efa2968d49adb08330d15c7ffe8' in submodule path 'site-lisp/auctex'
Unable to checkout '89611c7a6947787bf2f591e64e22b7444ea5ed41' in submodule path 'site-lisp/drupal-mode'

これらのいくつかは .gitmodules ファイルにエントリがなく、手動で追加しました。しかし、今、このエラーを修正する方法がわかりません。私はemacsと穴のドットファイルのことは初めてなので、ヒントをいただければそれは素晴らしいことです(スタックオーバーフローでGitサブモジュールヘッドの「参照はツリーではありません」というエラーが見つかりましたが、これが私の問題であるかどうか、またその方法を本当に理解していませんでした修理する)

PS: github リポジトリに関する問題を議論するフォーラムが見つからなかったため、リポジトリのメンテナーである Damon Haley にこのリンクへのリンクをメールで送信します。

よろしくお願いします。この素晴らしいコミュニティへの貢献に感謝します。

デニス

4

1 に答える 1

2
fatal: reference is not a tree: 89611c7a6947787bf2f591e64e22b7444ea5ed41  
Unable to checkout 'a2bcba9a92873900055dcaff640e4d31a650947e' in submodule path 'override/bbdb'

つまり、サブモジュール (ここではgit://git.savannah.nongnu.org/bbdb.git) によって参照されるリポジトリには、そのコミットが含まれていません。
考えられる原因の 1 つは、そのサブモジュール リポジトリがその履歴が変更されたことを確認した場合です (push --forceたとえば)。

https://github.com/dhaley/dot-emacsをフォークし、互換性があると思われるコミットでフォークを更新する以外にやることはあまりありません(を探索した後git://git.savannah.nongnu.org/bbdb.git)。そうすれば、プル リクエストを送信して、親リポジトリのメンテナーに、dot-emacsそのサブモジュールの参照を、見つけたはずの SHA1 で更新するよう依頼することができます。

于 2013-08-24T13:37:03.373 に答える