问题标签 [sparse-checkout]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
svn - Windows 命令行“svn update”期间的冲突
我将 VisualSVN Server 用于我的后端 SVN 服务器(如果重要的话)。
下面是两组命令。第一组创建一个文件夹,然后将 SVN 中的一个文件夹签出到新创建的 Windows 文件夹。第二组(单个命令)出现冲突错误,但我不知道为什么。我正在尝试进行稀疏结帐,只需签出两个文件夹。理想情况下,我还想要这两个文件夹下的文件(--set-depth immediates),但我还没有走到那一步。我查看了使用 TortoseProc.exe,但该 API 没有提供足够的命令来执行此操作。如果您知道如何使用 svn 命令解决此问题,请告诉我。我尝试了几种不同的变体svn checkout
, svn update
,svn up
和它们的组合。
该文件夹已创建,并且该.svn
文件夹是_TEST
在 Windows 中的该文件夹中创建的。所以我已经验证了第一组命令。
第一组命令:
第二组命令:
第二组命令(第一个命令出错):
编辑(评论请求):
extjs - Tortoise SVN:创建稀疏分支
下面是一个链接,其中包含有关如何使用 Tortoise SVN 创建分支的说明。
我正在使用 Sencha ExtJS 和 Sencha Touch 框架进行开发。Sencha 建议开发人员将您的应用程序主干文件夹构建为实际框架本身的子(或后代)文件夹,以便每个应用程序可以共享包和主题,以及框架资源(即:图像、图标等)。
SVN项目文件夹结构:
主干文件夹结构:
只需将 app1 带到新分支:
因为上面的这个工作流程(创建一个分支)说要将主干复制到新的分支文件夹,所以所有的应用程序都被复制了。基本上我想选择我想复制的应用程序。Tortoise 有一种方法可以使用稀疏结帐功能来做到这一点。有谁知道创建分支时的工作流程是什么?
git - 为什么在稀疏结帐后调用`git read-tree`
根据Subdirectory Checkouts with git sparse-checkoutgit read-tree -mu HEAD
在已经存在的存储库的情况下配置稀疏检出后调用一次,即:
- 你能
read-tree
更详细地解释一下这个步骤吗? - 它是如何工作的?
- 到底是怎么回事?
- 为什么一个人使用
read-tree
而不是,让我们说,checkout
? - 为什么要使用
-mu
(为什么这是合并,以及合并了什么)?
-m
-u
macos - 错误:稀疏结帐在工作目录上没有留下任何条目
首先,我告诉您,我已经检查了所有类似的线程并搜索了谷歌以查找可能是什么问题,但没有成功。我的问题是我试图在 git 中使用稀疏结帐,但我收到此错误:
我有这个 60GB 的存储库,我需要克隆它。我只需要其中的一部分,所以为了节省磁盘空间,我想使用稀疏结帐。这就是我所做的:
mkdir repoDir
git init repoDir
cd repoDir
git remote add origin <repo url>
git config core.sparsecheckout true
echo "some/dir/" >> .git/info/sparse-checkout
git pull --depth=1 origin master
注意我添加了没有 -f 标志的遥控器,所以没有获取任何内容。
结果:
我尝试了几件事:
- 我没有初始化新的 repo 并手动添加遥控器,而是
git clone --no-checkout
设置了稀疏结帐。正如我所展示的那样,这并没有帮助,git status
就好像我删除了存储库中的所有文件一样。该git pull origin master
命令导致相同的错误。 - 在第 6 步中尝试了所有可能的路径组合,包括前面的斜杠、路径后面的斜杠、星号、路径和
>
or之间的空格>>
。顺便说一句,我很困惑这里的正确格式是什么,从对 SO 的评论中我看到了相互排斥的格式化方式。 - 试图确保 my
.git/info/sparse-checkout
是 ASCII,并且有正确的行尾,如此处所示。这可能只在 Windows 上存在问题,但我还是检查了这个。
我的 git 版本:git version 1.9.3 (Apple Git-50)
OSX 优胜美地 10.10.2 (14C109)
git - Git 从存储库中拉取文件夹的内容
我一直在尝试这个没有成功。
我有一个包含 3 个文件夹的 git 存储库。让我们说:
文件夹 A 文件夹 B 文件夹 C
例如,我希望能够仅将文件夹 B 的内容提取到网络服务器。
例如,我只想以某种方式在 www 文件夹上初始化一个 git repo 并做一些魔术并将文件夹 B 中的文件拉到这个特定的文件夹中。
对文件夹 B 执行稀疏签出会在我的 www 文件夹中创建文件夹 B。我只需要它的内容。
这甚至可以使用 Git 吗?
git - 如何在 Git 中拉取和推送子目录
我的要求是仅从主存储库中提取和推送特定文件夹的文件。我使用的方法只是帮助我拉取特定文件夹的文件,而不是推送。
所以在我的主仓库中,我的文件夹结构如下所示。
这就是我正在做的。
这在我拉动时工作正常,它不会将文件带到其他文件夹,但它也不会为examfold3 带来文件,并且当我从本地存储库进行一些文件更改后推送时出现以下错误。
我相信 git 认为我的本地 repo 没有与 master 同步,因为我没有为其他文件夹提取文件。任何帮助将不胜感激。提前致谢。
git - 稀疏结帐会影响 git fetch 吗?
我查看了如何仅克隆 Git 存储库的子目录?,投票最多的答案是使用稀疏结帐。但是这个评论说它仍然下载整个回购。
哪个是对的?
稀疏结帐会影响提取,还是仅影响结帐?
换句话说,如果我有一个 10GB 的 Git 存储库(压缩),我是否仍然会在第一次从存储库中获取时下载整个 10GB,即使是稀疏结帐?
git - 在 GitHub 中保存有关稀疏结帐的信息
我在 /root 中存储的项目中有一个稀疏的结帐文件夹。它正在检查文件夹https://github.com/tastejs/todomvc/tree/master/examples/angularjs
我是通过以下方式完成的:
我希望能够将此信息保存在我的存储库中,以便其他开发人员可以使用它。我该怎么做?如果我运行 git status ,则无需签入。
对于奖励积分,我不希望将克隆的文件存储在“/examples/angularjs”下,而只是存储在 /angular 文件夹中。
android - 有助于更快“签出”(下载)Android 源代码的提示和技巧
查看和搜索 Android 源代码很简单。您只需访问AndroidXRef网站。
但是,如果您想构建和运行Superuser 的最新版本,您必须首先下载整个 Android 源代码树。
想象一下,我想从源代码控制中获取 Android“master”分支。
如果我按照谷歌的官方说明:
- 手术肯定需要至少一个小时。可能需要半天或更长时间。
- 它可能会引入数十 GB 的数据。在我居住的地方,当用户在一个月内提取数十 GB 的数据时,ISP 有时会收取“超额费用”。我不喜欢支付费用或附加费。
简而言之,做一个普通的repo sync
命令可能会很慢而且很浪费。我不需要完整的 Android 开发历史;而且我没有无限的磁盘空间。
如何更快地查看 Android 源代码?
我知道做一个“浅克隆”会有所帮助。我怎样才能做到这一点?
Rakesh在其他地方写道,这
repo sync -c
将有所帮助。会吗?我已阅读该选项的文档。-c
但我对 Git 的了解不够深入,无法知道该选项是否真的有帮助。这是一个相关的讨论。(可选:)我可以使用任何其他提示或技巧来加快结帐操作吗?
(可选:)最后,我需要多少磁盘空间来保存签出的代码?
PS 我感谢 durron597 上周在聊天中给我的建议。对这个问题所做的任何改进都归功于他/她。