如何从Git远程版本(分支/标签/提交哈希)仅检出单个文件?
从远程Git仓库仅检出特定版本的单个文件(支持短哈希)
我需要从格式为https://github.com/foo/bar.git的远程Git仓库$URL中,检出指定版本$REVISION的单个文件,要求不下载其他无关文件或历史记录。其中$REVISION可以是分支名、标签名、短提交哈希或完整提交哈希。
我当前使用的解决方案如下:
git clone --depth 1 --no-checkout $URL . git fetch origin $REVISION git checkout FETCH_HEAD -- foo.txt
但这个方案存在问题:短提交哈希无法生效,执行git fetch步骤时会报错fatal: couldn't find remote ref,只有完整长度的提交哈希能正常运行。
请问是否存在支持短哈希的通用解决方案?另外,网上提到的git show方案因要求目标版本已存在本地仓库,不符合我的需求,所以不适用。
内容的提问来源于stack exchange,提问作者em_ly
相关产品推荐
相关产品推荐

