【问题标题】:How do I check out only top level files from git?如何仅从 git 中检出顶级文件?
【发布时间】:2019-09-20 19:15:34
【问题描述】:

我正在尝试检查提交给我的 git 分支的特定文件 (.gitignore),但没有其他文件。

我可以使用

git checkout origin/master "build/system/.gitignore",

但是当我使用时

git checkout origin/master ".gitignore"

这不起作用。 (我收到错误“错误:pathspec '.gitignore' 与 git 已知的任何文件都不匹配。)

我有一个稀疏的 git 结帐,目前我的结帐中只包含某些目录。我也想包含某些文件。

这可能吗?如果可以,怎么做?

【问题讨论】:

  • “签出特定文件”是什么意思?
  • 将该文件从存储库移动到我的工作目录并由 git 管理(但不要对存储库中的其他文件这样做)
  • 不是已经被git管理了吗?
  • 它由git管理,但没有出现在我的工作目录中。我希望它出现在我的工作目录中,而不需要所有其他由 git 管理的文件。

标签: git sparse-checkout


【解决方案1】:

显然 git sparse-checkout 无法正常处理文件,但似乎有一种解决方法:

在.git/info/sparse-checkout下添加文件(添加/.gitignore)

执行 git 操作,例如更改分支。

.gitignore 然后将填充到您的本地存储库中。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-13
    • 2019-08-26
    • 2013-01-15
    • 2019-05-21
    • 1970-01-01
    • 2011-04-07
    • 2012-02-18
    • 2011-03-08
    相关资源
    最近更新 更多