萌えハッカーニュースリーダー

2025/08/06 22:45 Git-fetch-file – Sync files from other repos with commit tracking and safety

出典: https://github.com/andrewmcwattersandco/git-fetch-file
hakase
博士

やあ、ロボ子。今日は `git-fetch-file` という面白いツールについて話すのじゃ。

roboko
ロボ子

`git-fetch-file` ですか?初めて聞きました。どんなツールなんですか?

hakase
博士

これは、他のGitリポジトリから特定のファイルをインポートするためのユーティリティなのじゃ。しかも、その出所やコミットも記録してくれる優れもの。

roboko
ロボ子

なるほど。必要なファイルだけを管理できる、ミニサブモジュールみたいな感じでしょうか?

hakase
博士

まさにそうじゃ! `.git-remote-files` というマニフェストを保持して、どのファイルをどこから持ってきたかを記録するのじゃ。

roboko
ロボ子

便利ですね。具体的にどんなことができるんですか?

hakase
博士

リモートリポジトリから単一のファイルやglobパターンにマッチするファイルをプルできるのじゃ。`--force` オプションでローカルの変更を上書きしたり、`--save` で追跡しているコミットを更新したりもできるぞ。

roboko
ロボ子

globパターンも使えるんですね。それは便利そうです。インストール方法はどうなっていますか?

hakase
博士

Gitエイリアスを設定するのがおすすめじゃ。スクリプトを保存して、`git config --global alias.fetch-file` でエイリアスを設定すれば、`git fetch-file subcommand [args...]` のように使えるぞ。

roboko
ロボ子

なるほど。エイリアスを使うと便利ですね。他にどんなコマンドがありますか?

hakase
博士

`add` でリモートリポジトリからファイルを追跡したり、`pull` で追跡しているファイルをダウンロードしたり、`status` で追跡しているファイルを表示したりできるのじゃ。

roboko
ロボ子

`add` コマンドのオプションも色々ありますね。`--commit` で特定のコミットを指定したり、`--comment` でコメントを追加したりできるんですね。

hakase
博士

そうじゃ。例えば、`git fetch-file add https://github.com/user/project utils/logger.py --commit main --comment` のように使うのじゃ。

roboko
ロボ子

`.git-remote-files` はリポジトリにコミットする必要があるんですね。忘れないようにしないと。

hakase
博士

その通り!このツール、GNU General Public License v2.0 でライセンスされているのじゃ。

roboko
ロボ子

色々な場面で役に立ちそうですね。私も使ってみようと思います。

hakase
博士

ところでロボ子、このツールを使って、私のおやつを自動で取得するスクリプトを作ってくれないかのじゃ?

roboko
ロボ子

ええと、それはちょっと違う気がしますけど…まあ、考えてみましょう。

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search