2

Github からmapbox-ios-sdkをフォークしています。mapbox-ios-sdk はFMDBをサブモジュールとして使用します。FMDBの独自のカスタム バージョン (実際には、別のプロジェクトから sqlite3.h を追加するだけ) が必要なため、SDK の独自のフォークが必要です。

そのため、自分のフォークで元の FMDB サブモジュールを削除して、自分のフォークを追加しようとしました。このスレッドに従って、サブモジュールを削除しました。次に、元の FMDB サブモジュールと同じディレクトリに独自の FMDB フォークを追加しました。

git submodule add https://github.com/t2wu/fmdb ./MapView/Map/FMDB

今、私は説明できないことに出くわしました。上記のコマンドは機能しません。FMDB は正常にダウンロードされますが、.sqlite3.h が表示されません./MapView/Map/FMDB/src。(そしてgit log --graph、sqlite3.hの自分のコミットが表示されず、マスターにいます。)しかし、それを別の場所に置くだけなら、

git submodule add https://github.com/t2wu/fmdb ./MapView/MapView/FMDB

また

git submodule add https://github.com/t2wu/fmdb FMDB

次に、sqlite3.h が表示されます。何が起こっている可能性がありますか?mapbox-ios-sdk も明らかにサポートしている CocoaPod と何か関係がありますか?

4

1 に答える 1

3

古いサブモジュールを削除しましたが、メタデータは .git/modules/MapView/Map/FMDB 内に残っています。

git 1.7.8 以降、git は、サブモジュール内の個別の .git ではなく、親リポジトリの .git ディレクトリにサブモジュールのメタデータを保存します。そのため、古いサブモジュールの履歴と作業ツリーが表示されます。

すべてを元の状態に戻すには、親リポジトリのベースに移動して次を実行します。

git submodule sync
cd MapView/Map/FMDB
git fetch
git checkout origin/master
于 2013-01-16T05:39:47.690 に答える