相关疑难解决方法(0)

如何克隆仅Git存储库的子目录?

我有我的Git存储库,它在根目录下有两个子目录:

/finisht
/static
Run Code Online (Sandbox Code Playgroud)

当这是在SVN,/finisht在一个地方签出,而/static在其他地方查出来,像这样:

svn co svn+ssh://admin@domain.com/home/admin/repos/finisht/static static
Run Code Online (Sandbox Code Playgroud)

有没有办法用Git做到这一点?

git repository git-clone subdirectory sparse-checkout

1298
推荐指数
18
解决办法
73万
查看次数

是否可以在不先检查整个存储库的情况下进行稀疏检出?

我正在使用包含大量文件的存储库,这需要几个小时才能结账.我正在研究Git是否能够很好地使用这种类型的存储库,因为它支持稀疏检出,但我能找到的每个示例都执行以下操作:

git clone <path>
git config core.sparsecheckout true
echo <dir> > .git/info/sparse-checkout
git read-tree -m -u HEAD
Run Code Online (Sandbox Code Playgroud)

这个命令序列的问题是原始克隆也执行结帐.如果将-n添加到原始克隆命令,则read-tree命令会导致以下错误:

错误:稀疏结账不会在工作目录上留下任何条目

如何在不先检出所有文件的情况下进行稀疏结账?

git

159
推荐指数
12
解决办法
11万
查看次数

用于简单Web部署的Git稀疏结账

我有这样的目录结构:

../dir1/dev/project1/...
           /project2/...
           /project3/...
       /production/
Run Code Online (Sandbox Code Playgroud)

我将dev(及其所有子目录)检入git(和github).一切都运作良好.

我想使用github通过签出(或拉动或其他)到我的生产目录中来仅部署project2.(具体来说,我想通过标签检查.)所以这会导致../dir1/production/project2

我不是一个git专家,但已经在线阅读了一堆,看起来"稀疏结账"就是我所追求的.我在这里,这里这里尝试过各种指令组合.

基本上我做了:

mkdir <repo> && cd <repo>
git init
git remote add –f <name> <url>
git config core.sparsecheckout true
echo /project2/ >> .git/info/sparse-checkout
Run Code Online (Sandbox Code Playgroud)

我什么时候git pull <remote> TAGNAME得到fatal: The remote end hung up unexpectedly.

我什么时候git checkout TAGNAME得到error: Sparse checkout leaves no entry on working directory.

我究竟做错了什么?

git web-deployment

7
推荐指数
1
解决办法
4062
查看次数