10
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

リポジトリ内のとあるフォルダを別のリポジトリとして独立させるには?

Posted at

ライブラリソースとアプリケーションのソースを一緒くたに管理していて、あるとき「やっぱり別々にしないとダメだ!」といった状態になったので、検証してみました。

今回は TortoiseGit と Git Bash の2つを使います。

#検証手順
手順は以下のとおりです。

  1. 「右クリック > Git クローン」を選択して、元となるリモートリポジトリから新しいリモートリポジトリを作成します。

    「URL」には元となるリモートリポジトリのアドレスを、

    「ディレクトリ」には新しく作成するリモートリポジトリのパスを指定します。

また、今回はリモートリポジトリを作成するので、「Bareリポジトリにクローン」にチェックを入れます。

0. 新しく作成したリモートリポジトリを選択して、「右クリック > Git Bash」を選択します。 0. 以下のコマンドを実行します。
**git filter-branch --subdirectory-filter [分離するディレクトリのパス]**

このコマンドを実行すると、指定したディレクトリ以外の履歴が綺麗さっぱり消えます。
また、ルートディレクトリも指定したディレクトリになっています。

これで分離できました。

#参考サイト

10
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
9

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?