首页 > 解决方案 > 如何签出(下载)git存储库目录内的单个文件

问题描述

我需要从 git 存储库下载单个文件(脚本)。我已经关注了这篇文章并设法下载了项目(存储库)根文件夹中的文件。但不幸的是,我不知道如何签出目录内的文件。

我的问题是如何在签出(下载)单个文件时指定目录内文件的路径?(例如下面示例中来自文件夹 A 的 fileA.txt)

存储库示例:

|-folderA
  |-fileA.txt
  |-fileB.txt
|-fileC.txt
|-fileD.txt

我在 PC 上运行的 Git 命令:

git clone --branch develop -n https://bitbucket.host/.../my_repository.git    // clone repository with no files
cd my_repository      // navigate to repository folder
git fetch
git checkout HEAD fileD.txt        // successfully downloads fileD.txt file
git checkout HEAD fileC.txt        // successfully downloads fileC.txt file
git checkout HEAD "folderA/fileA.txt"   // error: pathspec 'folderA/fileA.txt' did not match any file(s) known to git
git checkout HEAD "/folderA/fileA.txt"   // fatal: Invalid path '/folderA': No such file or directory 

标签: git

解决方案


试着这样说:

git checkout HEAD -- folderA/fileA.txt

(有关双破折号的含义,请参阅 Stack Overflow 问题,例如Git checkout double dashes 的含义


推荐阅读