I have two unrelated repos, A and B. I wish to fetch a specific file from A for a specific commit/hash/tag and copy it into B.
I have both A and B locally, i.e. both a cloned.
Thus far the only method I have is go to A, checkout to the desired commit, go back to B and do a cp path_to_repo_A/file path_to_repo_B/file
CodePudding user response:
You can use git show "[commit/hash/tag]:[file]" in repo A to print the contents of a file from git without checking it out. You can then pass that to a file in repo B.
E.g. to copy README.md on the main branch:
cd A
git show "main:README.md" > ../B/README.md
cd ../B
git add README.md
git commit
You might also find the -C option to git useful - it let's you specify the path for git to work from without having to cd to it:
cd B
git -C ../A show "main:README.md" > README.md
git add README.md
git commit
