首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Git稀疏签出后工作副本中的目录太多

Git稀疏签出后工作副本中的目录太多
EN

Stack Overflow用户
提问于 2013-03-25 14:51:23
回答 2查看 298关注 0票数 1

我们有一个git (远程托管在github --让我们称它为客户端回购),根目录中有210+目录。我们有210+窗口服务器,每个服务器都需要其中一个根目录,而不需要其他目录。

因此,我们登录其中一个服务器,并使用1.8.1.msysgit.1

  1. 从git集线器克隆客户端回购
  2. 打开稀疏结帐
  3. 使用我们希望在此服务器中运行副本的单一*目录/*更新稀疏签出文件
  4. 执行读树操作

每10次中有9次一切都正常工作,而工作副本包含我们期望的单一目录。

然而,每隔一段时间,它将不能像预期的那样工作,我们还会得到一些其他目录,也会流到工作副本。它从来不是完整的210+,但将在6-10个其他目录之间。这些目录不匹配所需目录的模式,也不匹配任何与所述模式匹配的子目录。

一旦这种情况发生,我们就无法解决当地的回购问题。我们已经尝试过:

  • 各种重置
  • 各种读树
  • 禁用/重新启用稀疏签出
  • 检查日志,看看是否发生了什么奇怪的事情

最终,我们通常会删除本地回购,再次遵循相同的步骤,而且它只是第二次工作。

我们还没有找到一种方法来可靠地再现问题,除了克隆、设置稀疏签出等等。在发生这种情况的20多次中,只有一次发生在非windows机器上(我们有一个ubuntu服务器运行git1.8.1.5,两周前显示了相同的问题)。

我的Google-Fu在这方面很薄弱。我想知道为什么会发生这种情况,任何潜在的解决办法都不能让我们删除回购并重新克隆它。提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-25 17:51:50

我有一次朋友遇到了这个问题。结果是他们从Unix系统上的子目录中删除了文件,然后当他们在Windows上执行git reset时,它将删除(现在)空目录中的所有文件,但是不会删除目录本身,因为Git只跟踪内容,而不跟踪目录。

Windows系统上文件夹的“较大”子集是吗?那些目录是空的吗?这可能是你的问题所在。

票数 2
EN

Stack Overflow用户

发布于 2013-03-25 17:47:09

Windows的权限不稳定。这些文件夹可能是在稀疏结帐清理后留下的,可能需要进入并手动删除它们。它们可能是空的;)

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

https://stackoverflow.com/questions/15617933

复制
相关文章

相似问题

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