【问题标题】:Why git pull rebase does not update my local folder?为什么 git pull rebase 不更新我的本地文件夹?
【发布时间】:2020-06-08 20:56:22
【问题描述】:

为什么 git pull rebase 不更新我的本地文件夹?

我的一个 Git 版本控制的 iOS 项目中有以下组,

-- App
-- Libs

我看到,对于我在 Xcode 中的项目,Libs 文件夹的组名和物理文件夹名称是相同的(即 CamelCased),但对于所有其他队友,该组显示 CamelCased 他们物理文件夹名称显示不同(smallcase,libs)。我已经完成了git pull --rebase 并获得了最新的远程存储库。但是文件夹名称仍然没有更新。

Libs 文件夹中,我们有一些库,令人惊讶的是,应用程序正在为包括我在内的所有成员构建良好。

为什么 Git 无法检测到本地物理文件夹和远程源文件夹名称之间的差异?我应该怎么做才能使我的本地代码与原点完全相同?请注意,当我将项目克隆到新位置时,我看到文件夹名称是小写 libs

git prune 也没有帮助。

【问题讨论】:

  • 您是否在 Windows 或任何其他不区分大小写的系统上工作?如果可以在这样的系统上签出存储库,最好不要使用字母大小写来区分路径。
  • 我和我的团队都在使用 Mac。
  • 据我所知,Mac 可能区分大小写或不区分大小写。你可以在同一个文件夹中创建两个文件/文件夹,它们的名称只是字母大小写不同吗? mkdir foo; mkdir FOO。如果创建FOO 失败,应该不区分大小写。另外,使用git ls-tree -r HEAD可以查看commit中实际提交的路径。
  • @ElpieKay 我的 Mac 不区分大小写,我无法使用 mkdir FOO 命令创建。这意味着我可以在我的项目中使用所有路径而不考虑大小写?有趣..
  • 在像Ubuntu这样区分大小写的系统上,fooFOO可以同时存在。在 Ubuntu 上两者都可以提交,但是在 Windows 或 Mac 上签出存储库时会导致问题。问题之一可能是 Git 一直抱怨 foo 已更改,而您确定存储库是新克隆的并且您还没有更改任何内容。

标签: ios git directory version-control git-pull


【解决方案1】:

似乎 git 不改变大小写只改变。

  • 如果你想要libs,你可以安全地重命名你的本地文件夹
  • 如果您希望您的团队有 Libs 提交,将文件夹重命名为 _Libs,然后再提交一个,文件夹重命名为 Libs

【讨论】:

  • 有趣的是 git 不会检测到它,真的!有参考吗?
  • 在 Mac 上,我观察到了这个问题。
猜你喜欢
  • 2021-06-06
  • 1970-01-01
  • 1970-01-01
  • 2016-10-27
  • 1970-01-01
  • 2015-03-21
  • 2014-12-03
  • 2022-12-03
  • 2011-09-11
相关资源
最近更新 更多