被 Git/Xcode 和 GitHub for Mac 难住了

Posted

技术标签:

【中文标题】被 Git/Xcode 和 GitHub for Mac 难住了【英文标题】:Stumped by Git/Xcode and GitHub for Mac 【发布时间】:2011-09-17 03:46:53 【问题描述】:

我有一台 Mac Pro 和一台 Macbook Pro,它们都在处理存储在 GitHub 上的同一个项目。当我尝试使用 GitHub for Mac 同步 Mac Pro 时,我发现我现在不知何故有了两个分支,Head 和 Master。当我尝试合并它们时,出现此错误:

未能查找参考。未能更新松散参考。 - 在哈希表中找不到条目。

当我尝试从 MacBook Pro 同步时出现此错误:

未提交的更改。请在同步之前提交您的更改。

底层框中有一个 DELETED Icon/r 行。我不记得删除图标。当我尝试提交此“更改”时,我收到此错误:

在分支主 您的分支比“origin/master”领先 2 次提交。

未为提交暂存的更改: (使用“git add/rm ...”更新将要提交的内容) (使用“git checkout -- ...”放弃工作中的变化 目录)

已删除:“图标\r” 没有添加任何更改提交(使用“git add”和/或“git commit -a”)

如果我尝试使用 Xcode 进行同步,我会收到此错误:

工作副本“Graphing-Calculator”未能提交文件。错误: pathspec 'Icon\r' 与 git 已知的任何文件都不匹配。

我真的很难过。显然我做错了什么,不知道那是什么,也不知道如何解决。感谢指导。

更新

当我尝试回滚 MBP 上的两个提交时,我收到此错误:

(
0   GitHub                              0x0000000100096531 -[GHApplication presentError:] + 445
1   libdispatch.dylib                   0x00007fff9277d90a _dispatch_call_block_and_release + 18
2   libdispatch.dylib                   0x00007fff9277f77a _dispatch_main_queue_callback_4CF + 308
3   CoreFoundation                      0x00007fff90564c0c __CFRunLoopRun + 1724
4   CoreFoundation                      0x00007fff90564216 CFRunLoopRunSpecific + 230
5   HIToolbox                           0x00007fff90f5c4ff RunCurrentEventLoopInMode + 277
6   HIToolbox                           0x00007fff90f63c21 ReceiveNextEventCommon + 355
7   HIToolbox                           0x00007fff90f63aae BlockUntilNextEventMatchingListInMode + 62
8   AppKit                              0x00007fff913dc191 _DPSNextEvent + 659
9   AppKit                              0x00007fff913dba95 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 135
10  AppKit                              0x00007fff913d83d6 -[NSApplication run] + 463
11  AppKit                              0x00007fff9165652a NSApplicationMain + 867
12  GitHub                              0x00000001000014e4 start + 52
13  ???                                 0x0000000000000002 0x0 + 2
)

更新

我很确定我已将其浓缩为:Git 认为文件 Icon\r 已被删除并想要提交此更改,但找不到文件 Icon\r。如果我尝试放弃更改,Git 会给我错误,“Icon\r 与 git 已知的任何文件都不匹配。”如何进行?

【问题讨论】:

你能添加 git status 的输出吗?至少第二台机器上的错误似乎可以自我解释。使用git rm 将您的更改添加到暂存区,git commitgit push(您似乎还有 2 个其他 cmets 尚未推送)。 git status 显示我在分支 master 上,输出如上所示。 你发现了吗?我正在处理的一个项目起源于 Macbook,我在一台 Windows 机器上,我猜它没有 Icon\r 的概念,因此 git status 告诉我它已被删除。我仍然可以提交、推送、拉取等,但我似乎无法做任何事情来摆脱那个该死的 #deleted: "Icon\r" 编辑:刚刚意识到你只是在 4 小时前更新了这个,这不是通常的没有答案的旧帖子,快速工作谷歌:S 还没有弄清楚。我删除了 .git 文件夹,然后执行 git init 和 git add,然后在重命名旧的 GitHub 存储库后将其推送到新的 GitHub 存储库。这至少允许我继续使用版本控制和远程存储库进行编码。 【参考方案1】:

感谢指向 ^M^M .gitignore 解决方案的指针。

要从您的工作仓库中清除这些条目,而无需执行创建新仓库的过程,只需执行“git commit -a”。这应该会从您的 git 索引中删除“/Icon\r”条目。

【讨论】:

以上是关于被 Git/Xcode 和 GitHub for Mac 难住了的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Github for Windows 崩溃后恢复 repo?

被称为“开发者神器”的GitHub,到底该怎么用?

将 GitHub for Windows 用于 Bitbucket 和 GitHub

github 和 github for windows 学习使用总结

gitHub使用入门和github for windows的安装教程

github for windows安装不了