问题标签 [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.

0 投票
2 回答
624 浏览

git - git:在稀疏签出、拉取、合并冲突后丢失了我的工作目录

我丢失了所有分支的 git 中的所有项目数据,我无法恢复它。

我创建了三个分支:'master''distribution''remoteerp'全部具有相同的代码,只是备份)并签出到remoteerp,然后我将稀疏签出配置配置为 true 并将/.git/info/sparse-checkout文件更新到/inoERP/inoerp/www/and /inoERP/inerp/inoerp-server。然后,我从 github 中提取了我的 fork 项目,如下所示:

这导致了 License.txt 和 Copyright.txt 的冲突,并且只在工作目录中显示了这些文件。由于我无法解决合并冲突(我仍在学习 git 作为初学者),我只是尝试使用重置为旧状态,git reset --hard但是它没有改变任何接受说类似sparse-checkout has changed your working directory. 随后签出到其他分支(如分发和主)也不会显示原始文件。我已经尝试了 git reset Head -- hard 和 git reset --hard on(签出后)所有分支,但没有用。

如何将我的项目恢复到旧状态?

0 投票
0 回答
64 浏览

git - 如何在 Git 中以 root 身份克隆特定的子目录?

我有一个库 Git 存储库:

我只想将仓库lib中的目录克隆到我的项目中,如下所示:

我知道稀疏结帐,但它保留了根目录。例如,

图书馆lib回购和项目必须能够相互同步

有什么办法可以做到这一点?先感谢您。:)

0 投票
1 回答
2250 浏览

git - 浅层和稀疏 GIT 存储库克隆

我有一个超过 1 GB 的浅克隆 git 存储库。我对所需的文件/目录使用稀疏签出。

如何将存储库克隆减少为稀疏的签出文件/目录?

最初,我能够通过在克隆时禁用签出来将克隆的存储库限制为仅稀疏签出。然后在进行初始结帐之前设置稀疏结帐。这将存储库限制为仅约 200 MB。更易于管理。但是,在将来的某个时间更新远程分支信息会导致其余文件和目录包含在存储库克隆中。将 repo 克隆大小发送回超过 1 GB,我不知道如何只处理稀疏的签出文件和目录。

简而言之,我想要的是一个浅而稀疏的存储库克隆。不仅仅是浅层回购克隆的稀疏结帐。完整的回购是对空间的浪费,并且某些任务的性能会受到影响。

希望有人可以分享解决方案。谢谢。

0 投票
0 回答
17 浏览

svn - 在进行 SVN(颠覆)稀疏检出后,我如何检出更多文件

假设我有一个这样的存储库

然后我做一个稀疏的结帐,所以我只有

检查过了。我决定我实际上也需要trunk/dir0/a.txt如何告诉 SVN 将其添加到结帐中,以便我的最终结帐将是

0 投票
1 回答
49 浏览

git - 如何像根一样签出嵌套文件夹

我有一个大型遗留仓库,我只对小部件目录感兴趣。通过使用 git sparse checkout,我只能下载我感兴趣的文件夹,这很好。
我的本地仓库现在看起来像这样:

我宁愿看不到所有的嵌套。
稀疏结帐是否有一些变化,我可以让我的本地仓库看起来像这样?

我知道我可以创建一个新的仓库,但是我会失去从远程仓库推送和拉取的能力。

0 投票
1 回答
136 浏览

git - 如何仅从 git 中检出顶级文件?

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

我可以使用

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

但是当我使用

git checkout origin/master ".gitignore"

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

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

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

0 投票
2 回答
1022 浏览

jenkins - 如何在 Jenkins 上从 SVN 进行稀疏结帐和更新?

我们有一个大型 SVN 存储库,我想对 Jenkins 进行稀疏检查。我确实理解稀疏结帐的概念,并且在本地拥有它,我可以让事情按照我的意愿工作。然而,在 Jenkins 上做事并反复运行它我无法开始工作。

我有一个回购结构如下

我想结帐和更新

不是

我的管道代码如下

每当我第一次运行此代码时,一切看起来都符合预期。但是,当 Jenkins 在以下时间运行它时,UpdateWithCleanUpdater会导致 FolderA 和 FolderB 首先被删除,然后再次检出。结果仍然是正确的,但是,我希望它花费的时间比必要的时间长得多。

我想保留UpdateWithCleanUpdater因为我希望 Jenkins 清理上一次运行中生成的文件。

有没有使用 Jenkins SVN 插件的解决方案?我将如何“手动”执行此操作,即第一次结帐,清理并仅更新以下时间,并且仍然根据 SVN 存储库上的更改检测自动运行 Jenkins?

提前致谢!

0 投票
1 回答
879 浏览

git - 如何从 git 对象中读取文件内容?

一个稀疏检出的工作树, 我希望解析完整的 git 对象, 以便能够更新 sparse .git/info/sparse-checkout,基于一些业务逻辑(这里不应该相关)。

我试图找到一个命令将“未稀疏”签出到临时文件夹中。我想知道,如果我什至可以在没有结帐的情况下从 git 对象中读取内容。

试图建立一个模块图

完整代码:

https://github.com/xoe-labs/odooup/blob/master/odooup/_modulegraph.py

0 投票
3 回答
1504 浏览

git - Git稀疏结帐错误“条目'路径/到/文件'未更新。无法更新稀疏结帐”

我刚刚按照以下步骤进行了稀疏结帐

不幸的是,最后一步失败并显示错误消息

这很奇怪,因为 (1)path/to/file存在 (2) 稀疏结帐过程在另一台机器 git 版本 1.7.1 (Centos 6) 上成功。当前机器是安装了 git 版本 1.8.3.1 的 Centos 7 机器。的输出git config --list在两台机器上是相同的。

0 投票
2 回答
518 浏览

git - Git稀疏结帐:无法识别将目录添加到现有列表

情况

通过在远程存储库中拉取主分支的单个子目录,我设法在我的笔记本电脑中创建了一个本地 git 存储库。我已按照https://stackoverflow.com/a/13738951/5459638上这篇文章中给出的说明进行操作。我使用 git 版本 2.22.0。

相对于https://gitlab.com/<user>/<project>/tree/master项目网页中给出的子目录的路径包含在文件.git/info/sparse-checkout中,例如

命令

确实创建了预期目录的本地副本。这通过tree -d. mylaptop是本地存储库的首选名称。这工作得很好。

问题

然后我想从同一个远程获取同级目录及其子目录,比如说

我将此路径作为新行添加到 sparse-checkout 文件中并运行上面的 git pull 命令。然而,结果是

我看不到本地树的变化。

研究

在 Stackoverflow 中遇到的几个建议中,我尝试了一下git update-index --skip-worktree,但无济于事。我这样做是出于直觉,但会避免盲目试验。这也不是路径中的斜杠的问题。

问题

显然我遗漏了一些让 Git 意识到列表已经扩展的东西。这可能是什么?