首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >文件到父目录的稀疏Git签出

文件到父目录的稀疏Git签出
EN

Stack Overflow用户
提问于 2013-11-07 14:53:10
回答 2查看 1.8K关注 0票数 9

借用几个教程,我可以在git中对一个特定的文件夹做一个稀疏的检查。

代码语言:javascript
复制
mkdir git-completion && cd git-completion
git init
git remote add –f origin https://github.com/git/git.git
git config core.sparsecheckout true
echo contrib/completion/ >> .git/info/sparse-checkout
git pull origin master

例如,假设我正在寻找git-completion.bashgit-completion.tcsh等脚本,这些脚本位于回购的contrib/completion文件夹中。

上面的稀疏签出确实返回了所需的文件夹,但它似乎有一个嵌套的文件结构:

代码语言:javascript
复制
git-completion/contrib/completion/git-completion.bash

是否有可能像这样将文件拖到父目录中?

代码语言:javascript
复制
git-completion/git-completion.bash
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-11-07 15:30:01

你可以用git show来做这件事

代码语言:javascript
复制
git show <revision>:path/to/file.txt > different/path/to/otherfile.txt

就你的具体情况而言:

代码语言:javascript
复制
git show HEAD:git-completion/contrib/completion/git-completion.bash > git-completion/git-completion.bash

对要结帐的每个文件重复。虽然,实际上,我认为,子目录的原因是,当这些子目录被捆绑到git发行版中时,它们会被放在contrib/completion子目录中,所以最好习惯于存储库布局.

票数 4
EN

Stack Overflow用户

发布于 2014-08-20 18:14:13

根据你想要完成的事情,你有两个选择。如果您仍然希望能够跟踪文件的更改,那么我将提交符号链接。如果您不关心本地更改,那么我将使用git archive

提交符号链接

您可以将符号链接提交到您所关心的文件,也可以使用备用签出来获取这些链接。

代码语言:javascript
复制
ln -s contrib/completion/git-completion.bash git-completion.bash
git add git-completion.bash

这将允许您编辑文件并仍然对其提交更改。

Git档案

这将简单地提取您正在寻找的内容。存储库中不会跟踪更改。

代码语言:javascript
复制
# generic
git archive <revision>:<path> | tar -xf -

#specific to your example
git clone --bare https://github.com/git/git.git ~/git-completion-bare
mkdir git-completion && cd git-completion
git archive --remote ~/git-completion-bare master:contrib/completion/ | tar -xf -

编辑:看起来github不支持git archive --remote。它仍然包含在下面,以防有人使用允许它的不同的托管服务。

Git存档--远程

使用git存档,您甚至可以直接从远程存储库下载更改,而无需首先克隆存储库。缺点是您无法跟踪使用Git进行的本地更改。

代码语言:javascript
复制
# General form
git archive --remote <url> <revision>:<path> | tar -xf -
# your example 
git archive --remote https://github.com/git/git.git master:contrib/completion/ | tar -xf -

您现在将在当前目录中拥有这些文件。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19838999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档