問題タブ [git-submodules]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git-submodules - git サブモジュールの更新は最初だけ必要ですか?
私は git サブモジュールのコツをつかんでおり (希望的観測?)、より具体的な質問を思いついています。これは良い兆候です...
スーパープロジェクトが参照するサブモジュールのリビジョンを と で見つけようとしましたが、そこには何も言及されていません....gitmodules
シナリオ
は、サブモジュールをルートの場所(インポート元)で変更していることです。そして、それらが「サブモジュール化」されている場所にそれらをプルします...
それらの変更をスーパープロジェクトリポジトリに組み込むためにスーパープロジェクトからコミットする以外に、サブモジュールコミットでプルされた新しいものを登録するために「」も行う必要がありますか? .git/config
git update
基本的に質問は次のとおりです。
git submodule update
スーパープロジェクトを最初に複製するとき、またはサブモジュールを (独自のリポジトリから) プルするたびに " " する必要がありますか?
ありがとうございました
git - Git サブモジュール: それぞれに複数の URL を持つことは可能ですか?
各 git サブモジュールに複数の URL を設定できるかどうか疑問に思っていました。それらの1つがダウンしているか、誰かがそれらの1つをブロックするプロキシの背後にいる場合、複数のソースがあると興味深いでしょう。
この問題が発生したことがありますか? どのように解決しますか?
svn - 最近変換されたsvnからgitリポジトリにサブモジュールを作成する
私は最近、たくさんのプロジェクトを持っている古い会社のsvnリポジトリをgitリポジトリに変換しました
すなわち。
レポ
- プロジェクト-1
- プロジェクト-2
- プロジェクト..n
この新しいgitリポジトリ内から、個々のプロジェクトごとにサブモジュールを作成することをどのように推奨しますか?
git - 外部レポサブモジュールを使用するように git プロジェクトをセットアップする方法は?
リモートリポジトリをプルするリポジトリを作成したいと思います。
たとえば、サブモジュールとして jQuery を考えてみましょう。
サブモジュールとして jQuery を使用してリポジトリを作成し、リモート リポジトリとして独自の外部を追加するプロセスはどのようなものでしょうか。
また、これがセットアップされたら、自分のリモコンを押したり引いたりすると、外部はそのまま残りますか?
git - 浅い git サブモジュールを作成するには?
浅いサブモジュールを持つことは可能ですか? それぞれが長い歴史を持ついくつかのサブモジュールを含むスーパープロジェクトがあるため、そのすべての歴史を引きずって不必要に大きくなります。
私が見つけたのは、この未回答のスレッドだけです。
これを実装するにはgit-submodule をハックするだけでいいですか?
git - Gitサブモジュールヘッドの「参照はツリーではありません」エラー
無効なコミットを指しているサブモジュールを含むプロジェクトがあります。サブモジュールのコミットはローカルのままで、別のリポジトリから取得しようとすると、次のようになります。
サブモジュール HEAD がどうあるべきかはわかっています。 commit を持つレポからプッシュせずに、これをローカルで変更できる方法はありますか2d7cfbd09fc96c04c4c41148d44ed7778add6b43
?
私が明確に言っているかどうかはわかりません...これは私が見つけた同様の状況です。
git - gitwebでサブモジュールSHA-1を決定する方法は?
何も複製せずに、つまりリモートで、サブモジュールの関連する SHA-1 を特定したい。git-ls-remote はこの情報を表示しないため、最初のアプローチは gitweb から XHTML をスクレイピングし、そこから SHA-1 を引き出すことでした。
残念ながら、gitweb はサブモジュールのサポートがかなり不十分なようで、関連付けられたパスの履歴を表示しようとすると、404 および 500 の「不明なオブジェクト」エラーが表示されます。したがって、サブモジュールに関連付けられている SHA-1 を特定することは、git-link を変更した正確なコミットを特定してから、diff を次のように解析しない限り、不可能と思われます。
残念ながら、gitweb はサブモジュールで非常に壊れているため、どのコミットにこの差分が含まれているかを判断する方法が見つからないため、各コミットを徹底的に検索しない限り、それはできません。
git 1.6.4.2 および 1.6.6.1 (最新の安定版) にバンドルされている gitweb を試しました。
誰でも解決策、または各リポジトリを複製することなくこれを行う別の方法を考えることができますか? ご覧のとおり、組織内のすべてのリポジトリと、各リポジトリ内のすべてのブランチに対してこれを実行したいと考えています。これは多くのブランチです。すべてのサブモジュールのコミットのリストを取得し、古いものがあるかどうかを判断するためにこれを行っています。
唯一の解決策が各リポジトリを個別に複製し、その中でクエリを実行することである場合、それが必要になります。残念ながら、一部のリポジトリは非常に大きいため、操作全体が非常に遅くなります。
django - プロジェクトスケルトンのgitリポジトリを作成する
githubの公開リポジトリでホストされているdjangoプロジェクトの開始点として、カスタムプロジェクトスケルトンを作成しました。
これを、@ githubでホストされている、新しいパブリックプロジェクトとプライベートプロジェクトのルートフォルダーとして使用したいと思います。
問題は、これをサブモジュールとして使用できないことです。これは、fas arとして、同じgitリポジトリ内の別のサブモジュール内にサブモジュールを追加できないことを知っているためです。私の場合、スケルトンフォルダー内にサブモジュールを追加したいと思います。
演習として、パブリックprojectBの場合、スケルトンのブランチを作成しましたが、projectBコードが別のブランチのスケルトンリポジトリ内でホストされているため、注意が必要です。
GITでこれをどのように行いますか?
また、パブリックリポジトリからのような「プライベートブランチ」を作成する方法に関するgithubのトリックはありますか?
ありがとう :)
ジュリアン
git - git のサブモジュールをその外部リポジトリの HEAD コミットに更新する方法
これに対する答えを見つけるのに問題があったので、後世のために投稿しています。
状況は、サブモジュール (svn 外部に似ています) を持つ git リポジトリを持っていることです。その参照を更新して、外部リポジトリ内の別のコミットを指すようにします。「git submodule sync」または「git submodule update」がそれを行うと思うかもしれませんが、それは間違いです。
git - git リポジトリの一部を再利用する
次のプロジェクト設定があります。
Solution A
Project 1
(軽量コンポーネント)Project 2
(多くのファイルが含まれており、に依存していますProject 1
)
Solution A
単一のgitリポジトリです。次に、別のソリューションを作成したところ、 の機能を再利用したり、更新したりできることがわかりましたProject 1
。したがって、私の2番目のソリューションはおそらく次のようになります。
Solution B
Project 1
(共有する必要があります!)Project 3
(によって異なりますProject 1
)。
Project 1
今、私は共有コンポーネントになりたいと思っています。Project 1
つまり、いずれかのソリューション (A
または)のソース コードを変更するたびに、B
それに応じてもう一方を更新する必要があります。
たぶん、これはgitのサブモジュール機能に何か関係があります。ただし、それを使用できた唯一の方法は、全体を のサブモジュールとして指定することです。の巨大なサイズのため、これは私が理想的に望んでいるものではありません。サブモジュールにするために必要なのは、そのごく一部だけです。Solution A
Solution B
Solution A
svnで可能であり、説明したとおりに機能することはわかっています。プロパティで外部リポジトリ内のディレクトリを指定しsvn:externals
ます。
それに関するヒントはありますか?それとも、私は何かが欠けていますか?