問題タブ [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 - HTTP プロキシ経由で Git リポジトリからプルするにはどうすればよいですか?
注: 説明されている使用例はプロジェクト内でのサブモジュールの使用に関するものgit clone
ですが、HTTP を介した通常のリポジトリにも同じことが当てはまります。
Git の管理下にあるプロジェクトがあります。サブモジュールを追加したい:
しかし、私は得る
HTTP_PROXY をセットアップしました。
http プロキシ用のグローバル Git 設定もあります。
HTTP フェッチがプロキシ経由で一貫して機能するようになった人はいますか? 本当に奇妙なのは、GitHub のいくつかのプロジェクトが正常に動作することです (awesome_nested_set
たとえば) が、他のプロジェクトは一貫して失敗します (たとえばrails )。
git - サブモジュールを含む git リポジトリを更新するには?
しばらくして、git リポジトリを更新したいと思ったのですが、問題が発生しました。この状況から抜け出す適切な方法は何ですか?
git - 1 つのディレクトリに 2 つの git リポジトリがありますか?
1 つのディレクトリに 2 つの git リポジトリを配置することは可能ですか? ないと思いますが、聞いてみようと思いました。基本的に、作業しているすべてのマシンで共通のホーム ディレクトリ構成ファイル (.emacs など) をチェックインしたいのですが、ローカル ファイル (.emacs.local など) 用の 2 つ目のリポジトリが必要です。マシン固有の構成。私が考えることができる唯一の方法は、ローカル構成をサブディレクトリに置き、メインの git リポジトリからそのサブディレクトリを無視することです。他のアイデアはありますか?
git - Git を使用して、サブモジュールを持つ外部プロジェクトをサブツリー マージする最良の方法は何ですか?
開発中の Web サイトに関連するすべてのものに Git リポジトリを使用しています。リポジトリには、ドキュメント、モックアップ、元の階層化された画像など、サイトに関連するすべてのファイルと、www
サブディレクトリに配置した Web ルートのものがあります。
私は、使用することを選択した CMS をプロジェクトの残りの部分と統合することを開始したいところです。CMS はオープン ソース プロジェクトであり、Git でも管理されています (重要な場合は GitHub でホストされています)。明らかに、CMS はwww
サブディレクトリにある必要がありますが、それだけではありません。CSS ファイル、画像、CMS 用のテンプレートなどがあります。このため、私が選択したのはサブツリー マージ戦略を使用して、外部プロジェクトをリポジトリに追加します。ある時点で元のプロジェクトを変更し、変更を元に戻す場合があるため、GitHub から CMS リポジトリを複製し、クローンからサブツリーのマージを行いました。
問題は、外部プロジェクト (つまり、CMS 用) に、インクルードしたいサブモジュールがあることです。サブモジュールがメイン プロジェクトに統合されていることを確認する最善の方法は何ですか? サブモジュールごとにサブツリーのマージを行う必要がありますか?
サブモジュールを変更したいとは思わないでしょうが、変更したい箇所が 1 つか 2 つある可能性はあります。
git - Git を使用したプロジェクト内のプロジェクト
他のプロジェクトを含むように Git プロジェクトを設定するにはどうすればよいですか?
例えば。私はオンライン マッピング アプリに取り組んでいます。SFの衣装と一緒にGPSツールを開発しました。同時に、別の関心事 (ジオマッピングのみを気にする) と共に Python Geomapping スクリプトを開発しました。私たち自身のコア ファイルは 2 つを結合し、必要なアプリのためにそれらの上に構築します。
各プロジェクトは単独で存在する必要があります。GPS に関心のある人は GPS にのみ関心があります。ただし、他のすべてのプロジェクトを含む「親」プロジェクトは、プロジェクトとしてアクセスできる必要があります。
サブモジュールを理解するために時間を費やしましたが、必要なものに対して独立性が高すぎるようです。
また、可能であれば、それらの各プロジェクトに 1 つまたは 2 つの重複するスクリプトを含めることができればよいでしょう。1 つの Git プロジェクトに、その「ルート」の一部ではないファイルを含めて、このファイルがいずれかのチームによって更新されたときに両方のチームが利益を得られるようにすることはできますか?
これは Git で実行できますか? マーキュリアルで?ホスト (GitHub、Gitorious) は重要ですか?
「親」に Subversion を使用する考えがあります - .git フォルダーを無視し、プロジェクトに Git を使用します (.svn フォルダーを無視します) - しかし、それは最後の手段にすぎません。
編集:
サブモジュールが不要な理由を説明するには:
- ユーザーがダウンロードすると、zip にはサブモジュールが含まれません (こことここ)。共同作業者でさえプロジェクトをセットアップしようとする場合も同様です。これはショーストッパーです。
- サブモジュールは凍結されています - それらは (簡単に) 指摘されているプロジェクトの最新バージョンを取得しません。
- 以下の素晴らしい回答とNoPugsでのこのモノローグで指摘されている他の理由。
サブツリーのマージ (下記の Paul によって紹介されました) はうまくいきません: [サブツリーの] ソースをマージ先のプロジェクト内から更新することは困難であり、そのソースはプロジェクトの「ルート」フォルダーの外に存在する必要があります。プロジェクト。Web アプリであるため、すべてのページがその中のフォルダーに内部的にリンクされ、テストと更新がそのフォルダー内で直接行われることが重要です。(これが明確で他の人にとって役立つことを願っています。)
「リモートブランチ」の設定についてはまだ勉強中ですが、他のアイデアはまだ歓迎されています。
git - 履歴を維持しながら、単一のディレクトリを git リポジトリから新しいリポジトリに移動するにはどうすればよいですか?
別々のディレクトリに複数のプロジェクトを含む git リポジトリを継承しました。リポジトリをプロジェクトごとに 1 つずつ、新しい個別のリポジトリに分割し、マスター リポジトリにプロジェクトをサブモジュールとして含めたいと考えています。可能であれば、個々のプロジェクトの改訂履歴を維持しながら、これらすべてを行いたいと考えています。
各プロジェクトのリポジトリを複製し、毎回他のすべてのプロジェクトを削除することもできますが、新しいプロジェクト リポジトリごとに複製された履歴を避けるためのより良い方法はありますか?
git - gitサブモジュールとの競合を管理するにはどうすればよいですか?
いくつかのサブモジュールを参照するgitスーパープロジェクトがあり、残りのプロジェクトメンバーがその中で作業できるようにワークフローをロックダウンしようとしています。
この質問では、私のスーパープロジェクトが呼び出されsupery
、サブモジュールが呼び出されたとしsubby
ます。(これは、私がやろうとしていることを単純化したものです...実際にはバージョンのブランチを使用していませんが、質問としてレイアウトするのが最も簡単だと思いました。)
のマスターブランチには、サブモジュールとして参照されるgitプロジェクトsupery
のタグがあります。のブランチは、のタグを指すようにサブモジュールの参照を呼び出して変更しました。v1.0
subby
supery
one.one
v1.1
subby
これらの各ブランチ内で問題なく作業できますが、ブランチone.one
からの変更でブランチを更新しようとするmaster
と、いくつかの競合が発生し、それらを解決する方法がありません。
基本的にgit pull . master
、ブランチでしばらく実行するsubby
と、追加のサブモジュールが作成されるように見えます。
プル/マージの前に、ブランチgit submodule
から目的の応答を取得します。one.one
しかし、プルした後、実行するとサブモジュールが追加されますgit submodule
。
不要なサブモジュール参照を削除/無視して、競合や変更をコミットするにはどうすればよいですか?git pull
または、サブモジュールを無視するオリジナルで使用できるパラメーターはありますか?
git - git サブモジュールのリモート リポジトリを変更するには?
サブモジュールを含む git リポジトリを作成しました。サブモジュール自体にリモート リポジトリ パスを変更するように指示することはできますが、サブモジュールのリモート リポジトリ パスを変更する方法を親リポジトリに指示する方法がわかりません。
サブモジュールを削除することさえ簡単ではないので、運が悪くて手動でやらなければならない場合でも驚かないでしょう。
git - git サブディレクトリを抽出し、そこからサブモジュールを作成する方法は?
数か月前にプロジェクトを開始し、すべてをメイン ディレクトリに保存しました。私のメイン ディレクトリ "Project" には、さまざまなものを含むいくつかのサブディレクトリがあります。 Project/paper には、LaTeX で書かれたドキュメントが含まれています。
"Project" は GIT 化されており、"paper" ディレクトリと "RailsApp" ディレクトリの両方に多くのコミットが行われています。今、「RailsApp」に Cruisecontrol.rb を使用したいので、履歴を失うことなく「RailsApp」からサブモジュールを作成する方法があるかどうか疑問に思います。