Xcode和Github没有一起玩

时间:2016-05-11 11:15:44

标签: ios xcode github xcode7

第一次尝试使用Github,xCode让我很难过。

我遵循了许多教程,但没有任何对我有用。

  1. 使用我的Github帐户,为项目创建了回购
  2. 打开Xcode并创建项目,选中git check mark
  3. 打开源控制菜单并附加到Github repo origin / master
  4. 试图推送并获得:“本地存储库已过期。确保已从远程存储库中提取所有更改,然后重试。”消息
  5. 试图拉动并得到:“”origin / master“不是一个有效的远程分支。请选择其他远程分支。”但是没有其他分支。
  6. 尝试了其他所有事情,没有任何效果
  7. P.S。我第一次连接到远程服务器时,我得到了一个输入用户和密码的弹出窗口,现在还没有得到它,所以我得到连接不是问题,我可以看到(或者我认为我可以看到)远程仓库

    有人有个主意吗?

    推送:

    enter image description here

    拉​​线:

    enter image description here

3 个答案:

答案 0 :(得分:3)

我大部分时间都使用命令行。我可以建议你为你的目的做一个更好的方法。

按照以下步骤操作:

  • 打开终端。

  • 输入以下命令

git clone --recursive https://github.com/EXAMPLE_PROJECT/EXAMPLE.git

  • 进入文件夹并双击xcode项目文件(如果项目已存在于github中)。假设项目不在github中,然后在该文件夹中复制并通过它并双击.xcodeproj
  • 项目加载到xcode后,单击菜单栏上的“Source Control”。
  • 您将看到提交,推送,拉取选项可见。现在你应该可以使用git了。

注意:

如果钥匙串终端中没有github帐户详细信息,则会要求输入。

如果您在github中使用多个用户帐户,则可能必须从密钥链中删除github帐户详细信息。我不知道如何设置多个github帐户。

答案 1 :(得分:3)

好的,解决了问题!

请注意,在创建git repo时添加README或gitignore文件时,我所做的任何事情都无法推送或拉出本地副本。

最终我删除了Github仓库并创建了一个没有文件的干净仓库。

然后从主回购页面完成了步骤,并且每件事情都运转良好。

我的问题是我在Github repo和本地git repo中都有不同的文件(本地的有一个Xcode项目文件)并且它在错误之后给了我很多错误,从干净的Github repo开始提前获取gitignore文件并将其添加到本地项目对我来说是个窍门。

10x,我希望有帮助

答案 2 :(得分:0)

同样的问题不时发生在我身上。到目前为止,我还没有真正有一个好的解决方案,不涉及拉动变更,丢弃变更和重做最近的工作。这些都不是理想的解决方案。

我习惯经常在文件系统上复制我的项目并打开副本。如果我遇到了破坏我的项目的XCode中的错误,这使我能够返回到先前的副本。有关示例,请参阅Youtube上的视频。 https://www.youtube.com/watch?v=IY9m2F2i6HY#action=share

我相信这最近发生在我身上是因为我在提交并将我的更改提交到cloud forge上的GIT存储库之前在文件系统级别复制了项目,但是我可以看到人们对github有同样的问题。 为了恢复我打开了我以前的版本(2017 ProjectOrganizer244_8)并提交并推送了更改。这是我之前忘记提交和推送的副本两个版本。然后我去了我的下一个版本,我无法办理登机手续。但是我没有检查我的最新版本(2017 ProjectOrganizer244_10),而是点击了最左侧面板中的图标以显示源代码导航器。这将打开一个看起来像这样的面板。 Show the Source Code Navigator

然后我打开了分支部分。当前分支被选中'IncreasedEditingWindowSizeAndAddedGoogleAnalytics'。我右键点击了这个分支并选择了“Branch from IncreasedEditingWindowSizeAndAddedGoogleAnalytics”。我为分支'ProjectOrganizerContainer'输入了一个新名称。然后当我下次选择Commit and Push时返回Source Control菜单时,选择了新分支。然后我能够成功地提交并推送我的更改版本10(我最近的副本)。这不会导致任何更改丢失,并允许我继续而不会丢失代码更改。如果我发现任何遗漏,我可以从版本9复制它然后提交它。对我来说最重要的是,我仍然看到过去113次提交的所有版本更改历史记录。