2011-12-09 14 views
5

可能性の重複の歴史を維持しながら:
How to move files from one git repo to another (not a clone), preserving history移動ファイル

を私は

How to move files from one git repo to another (not a clone), preserving history

での手順に従って、私はファイルが移動しますでしたそれ以上のレポの歴史をもたらしました!

リポジトリ全体の履歴ではなく、関連するファイルの履歴だけを表示する方法はありますか?

編集:

、私がやろうとしているかについてより明確にすることが、リポジトリ内の10件のファイルがあり、それぞれが(その10の合計は、ログにコミット)1は、それに関連したコミットがあると仮定します。

ファイルの一部を転送する新しいリポジトリがありますが、そのうちの2つを考えてみましょう。私はそのファイルから履歴を含むファイルを持っていきたいので、新しいrepoのログに元のリポジトリから2つのコミットがあると思います。上記の方法では、たとえ2つのファイルだけがやってきたとしても、10個のコミットがすべて終了します。

+0

http://stackoverflow.com/questions/1365541/how-to-move-files-from-one-git-repo-to-another-not-a-clone-preserving-historyの可能なdup –

+3

Not aup複製 - 私はその方法を使用しましたが、インポートしたファイルの履歴だけでなく、リポジトリ全体の全履歴を表示します。 – tpg2114

+1

重複していないと私は同じ問題があります –

答えて

0

Subtree Mergingを試しましたか?

サブツリーサブツリーマージの考え方は次の2つのプロジェクトを持っているということで、プロジェクトの一つが、他の1、またはその逆のサブディレクトリにマップ をマージします。サブツリーのマージを指定すると、Gitは、あるものが他のもののサブツリーであり、適切にマージすることが分かります。

別のプロジェクトを既存のプロジェクトに追加し、次に2番目のコードを最初のプロジェクトのサブディレクトリにマージする例を説明します。

+1

これは、インポートされたファイルの履歴を保持していないようです。 Git blameは、元の作者ではなく、私が編集したすべてのマージされたファイルを表示します。 gitログには、持ち込まれたファイルに関連するコミットが表示されません。 – tpg2114

+0

そのリンクは既に死んでいます。最新の情報はhttp://git-scm.com/book/ch6-7.html – sukhmel

-4

履歴が1つだけコミットされている場合、そのファイルを新しいリポジトリにコミットするだけではどうですか?この時点では歴史はありません。

+2

これはその点を明確にするための一例にすぎません。私は、1000以上のファイルと3年間の歴史を持つレポから2つのファイルを持ち出そうとしています。だからこそ私は元のレポの全履歴を残すことを避けようとしているのです。私が引き継ぐファイルの履歴だけが必要です。 – tpg2114

+0

次に、新しいリポジトリ内のアクティブなブランチごとにブランチし、その時点で存在するものをコミットします。あなたが望むすべてのブランチに共通するルートコミットを行います。 –

関連する問題