私が取り組んでいるプロジェクトでは、多くのリモート リポジトリから個々のファイルを取得します。プルされたすべてのファイルが、新しいリポジトリにプルされたときに元のリポジトリからの完全なコミット履歴を保持し、将来そのコミット履歴を参照できるようにすることが重要です。
これを行うための正しい方法/ワークフローが見つからないようです。ファイルをプル/操作している間、リモートリポジトリをローカルに保存しています。プルしているリポジトリもディレクトリ構造がまったく異なるため、プルするたびにファイルを新しいパスに移動しています。
履歴のあるリポジトリ間でファイルを並べて移動できる何らかの GUI があれば理想的ですが、現在のリポジトリ パスに cd し、必要に応じてリモート パスでファイルをそこにプルすることはそれほど大きな問題ではありません。git archive コマンドを見ましたが、履歴を取得できませんでした。このために checkout コマンドを使用する方法はありますか?
私が引っ張っているファイルには、特定のものが変更された理由を正確にコメントする非常に詳細なコミット履歴があります。引き込まれた)。私がプルしているリポジトリの一部は、もともと git に変換した svn リポジトリでしたが、リポジトリの履歴が存在しているように見えるため、おそらく問題は発生していません。
時々私は外部リポジトリからファイルをマージしています.両方の履歴を保持できれば理想的ですが、それが可能かどうかはわかりません.多くの場合、ファイルを上書きしています.古いファイルの代わりに新しいファイルの履歴、または少なくともマージがどこから来たのかをマークすることは、コミットで元をマークできるほど重要ではありません。
これには Mercurial を使用する方が簡単でしょうか?