TortoiseGit 別のブランチで追跡しているファイルを今のブランチに追加

Windows シェル拡張(エクスプローラに機能を追加)で Git を操作できる無料の Git クライアントソフトウェア TortoiseGit で、一方のブランチでだけ追跡しているファイル・フォルダを、別のブランチを選択した状態のフォルダに持ってくる、我流の手順を紹介します。
※シンプルな方法ですが、公式サイトでは見つけられなかった我流です。自己責任でご利用ください。

TortoiseGit ダウンロードとインストール1

TortoiseGit-2.17.0.2-64bit を使用します。

Git コマンドによる別ブランチで追跡しているファイルの取り込み

Gitコマンドを使用する場合は、git checkout で取り込み元のブランチを指定して、別のブランチのファイルを取り込む方法があります。

git checkout [取り込み元のブランチ] — [特定のファイルの相対パス]

gitで別ブランチの特定ファイルのみをとりこむ

Git のインストールについては以下の記事を参照してください。

TortoiseGit には同様の機能のメニューが見つけられなかった

しかし、 TortoiseGit ではそのようなメニューが見つけられませんでした。

一番近いと思った機能は、「切り替え/チェックアウト」です。
※リポジトリフォルダを右クリックして表示されるメニュー「TortoiseGit」→「切り替え/チェックアウト」を選択します。

TortoiseGit 別のブランチのファイルの取り込み(我流)1

「切り替え/チェックアウト」では、そのダイアログのブランチで選択した既存のブランチ切り替えると同時に、そのブランチで追跡しているファイル構成で、実際のリポジトリフォルダ内のファイル・フォルダを変更します。
そのため、別のブランチのファイルを checkout によって取り込むことはできなそうです。

TortoiseGit 別のブランチのファイルの取り込み(我流)2

切り替え前のブランチで追跡しているファイル・フォルダは、切り替え後のブランチで追跡していない場合削除される仕様については以下の記事も参照してください。

TortoiseGit による別ブランチのファイルの取り込み(我流)

別のブランチに切り替えてチェックアウトしたファイルコピーを一時的に別の場所(デスクトップ)に退避しておき、その後、元のブランチに切り替えて、コピーして退避しておいたファイルをリポジトリフォルダ内に貼り付けます。

はじめに、先ほどと同様に、リポジトリフォルダ右クリックして表示されるメニュー「TortoiseGit」→「取り消し/チェックアウト」を選択します。

TortoiseGit 別のブランチのファイルの取り込み(我流)1

取り込みたいファイルを追跡管理しているブランチ(例では publish)を選択して、 OK ボタンを押すと、取り込みたいファイルを含んだ、切り替え先のブランチ(例では publish)が管理しているファイル構成リポジトリフォルダ変わります。

TortoiseGit 別のブランチのファイルの取り込み(我流)3

別のブランチで取り込みたいファイル・フォルダコピーして、デスクトップなどに貼り付けて、リポジトリフォルダ外に退避しましょう。
これは、ブランチを変えた際に、それらのファイル・フォルダが消えてしまうためです。

TortoiseGit 別のブランチのファイルの取り込み(我流)4

取り込みたいファイル・フォルダをデスクトップなどにコピーして退避したら、ブランチを、それらのファイル・フォルダを取り込みたいブランチに切り替えます。
例では publish ブランチから master ブランチに切り替えます。
※以下のダイアログは、リポジトリフォルダで右クリックすると表示されるメニュー「TortoiseGit」→「取り消し/チェックアウト」を選択すると表示されます。

TortoiseGit 別のブランチのファイルの取り込み(我流)5

ブランチを切り替えると、切り替え先では管理していないファイル・フォルダは削除されます。

TortoiseGit 別のブランチのファイルの取り込み(我流)6

先ほど退避しておいたファイル・フォルダを、ブランチを切り替えた後のリポジトリフォルダにコピー&ペーストします。
同じ名前のファイルがある場合はスキップするようにして、存在しないファイル・フォルダだけを貼り付けます。

TortoiseGit 別のブランチのファイルの取り込み(我流)7

以上で、TortoiseGit で、他のブランチで管理対象のファイル・フォルダを、別のブランチに取り込むことができました。
※この時点では、現在のブランチでは Git 管理外のファイル・フォルダとして扱われています。

リポジトリフォルダに配置したファイルを Git 管理対象にコミットする

ファイル・フォルダを Git 管理対象に含めるためのコミットについては以下の記事を参照してください。

まとめ

今回は、Windows シェル拡張(エクスプローラに機能を追加)で Git を操作できる無料の Git クライアントソフトウェア TortoiseGit で、一方のブランチでだけ追跡しているファイル・フォルダを、別のブランチを選択した状態のフォルダに持ってくる、我流の手順を紹介しました。
※シンプルな方法ですが、公式サイトでは見つけられなかった我流です。自己責任でご利用ください。

参照サイト Thank You!

記事一覧 → Compota-Soft-Press

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました