私はサブツリーのようないくつかのディレクトリを持つ大きなメインプロジェクトを持っています。gitは別のメインリポジトリにサブディレクトリをプッシュ
私はしたい特定のサブツリーの1つの特定のサブツリーの変更を独立したリポジトリにプッシュします。
困っているようですが、それは現在のようですサブツリー元々リポジトリから来ていないので押してみたいプッシュしたいです。それはサブツリーガイドを介して別のレポから来ました。私はグーグルで見つけました。それはちょうど非常に似ています。
大きなプロジェクトレイアウト。important_subtree
が気になるものです。
~/devel/bigproject
.git/
some_subtree/
other_subtree/
important_subtree/
abc.txt
efg.txt <--- new version
hij.txt
そしてimportant_subtree
はそのレポに "強く関連" である:
~/devel/important
.git/
abc.txt
efg.txt <--- old version
hij.txt
今~/devel/bigproject/important_subtree/efg.txt
は変更されていると私はレポ~/devel/important
にimportant_subtreeをプッシュします。その後、~/devel/important/efg.txt
にも変更があります。
私が行うために管理唯一のことは、私が欲しいものは明らかにされていない、重要にbigprojectにプッシュにすべてをプッシュすることです。サブツリー内の変更のみをプッシュする必要があります。
魅力的な作品です。 'YOUR_SUBDIR'が書き換えられたリポジトリのルートディレクトリになります(これはまさに私が望むものです)。また、私は 'プッシュ'を理解していない:私の新しいリモートURL?なぜ-f(力)?何が "。"ここですか?私はあなたのプッシュを再現できませんでした。だから私は 'cd ..のために行った。 git clone ' - 完璧です。 –
towi
プッシュは、抽出されたファイルを新しいリモートに追加することです。編集がより明確ですか? – jeremyjjbrown
"新しいリモート?私は、歴史が書き直されているので、書き換えられたレポを現在のリモートにプッシュできないと言っていると思います。ですから、新しいリポジトリを初期化して(サーバーの何でも)、書き換えをそこにプッシュするのが最善です。 – towi