2017-11-29 9 views
-1

2つの独立したgitリポジトリ(BitBucket内)、Repo AおよびRepo Bがあります。 Repo BRepo Aのサブフォルダーに移動します。私はまた、Repo Bのコミット履歴などが保持され、失われていないことを確認する必要があります。Git:別のリポジトリのサブフォルダにリポジトリを移動してください。

どうすればgitでこれを達成できますか?

+0

plaseは具体的ですが、これらの2つのreposを完全にマージしますか? –

+0

@MichałWalenciak:はい、理想的です。コミット履歴を失うことのない方法がある場合。 – grizzthedj

答えて

1

BitBucketでは実行されていませんが、gitを使用しています。次の手順が必要です:

  • レポBをクローンしたレポにフェッチします.Gitはこれについて警告するかもしれませんが、それでもやります。
  • コードを取得したチェックアウト(その時点ではリポジトリBのコードのみが使用されます)、すべてを目的のサブフォルダに移動します。それを約束する。
  • あなたのrepo Aコードを再度チェックアウトし、mergeあなたが作成したコミット。
1

Repo BをRepo Aにサブフォルダとしてマージするには、Repo Aでこのコマンドを実行します。これは、の歴史がかかります

git subtree add -P <prefix> <repo> <rev> 

レポBのクローンURLにサブディレクトリ、<repo>の名前に設定<prefix>、そしてあなたが望むレポBの改正に<rev>(最新の場合はHEAD) Repo Bを作成し、それを追加のマージコミットとともにレポAとマージします。