我按照此处投票最多的答案中的说明重命名了我们的iOS项目(客户最终选择了一个名称)。我推动了我的更改。现在,当我的队友拉动时,他们无法打开项目,因为 Xcode 找不到 .pbxproj 文件。他们随后重置为良好的本地版本。
像往常一样,当我皇家时,我尝试硬重置到最后一个良好的提交,计划强制将良好的提交推送到远程。虽然重置是"成功的",但它并没有将newName.pbxproj改回oldName.pbxproj。所以我无法打开该项目。检查我的错误提交也没有帮助。我又回到了原点。
.pbxproj 不在我们的 .gitignore 中:
*.DS_Store
*.xcodeproj/xcuserdata/*.xcuserdatad
*.xcodeproj/project.xcworkspace/xcuserdata/*.xcuserdatad
*/*.xcodeproj/xcuserdata/*.xcuserdatad
*/*.xcodeproj/project.xcworkspace/xcuserdata/*.xcuserdatad
我现在唯一能想到的就是从特定的远程提交中克隆项目。我该怎么做?其他选择?为什么重命名的 .pbxproj 不会在拉取中转移?
如果你做一个git log -5
它将显示你最近的 5 次提交。 在命名文件之前确定版本,您可以执行git reset --hard HEAD~<number>
,其中<number>
是要返回的提交数。
或者,使用重命名的 proj 文件,您可以尝试用git push origin :branchName
吹走遥控器,然后将本地更改的分支推送到远程git push origin branchName
然后,让您的其他团队成员从新推送的遥控器中拉取。