我有一个iPad应用程序(Xcode 5,iOS 7,Git源控制和故事板)。我有两(2)个分支机构,我目前正在工作(App Store中1.8.1,以及2.0.0作为工作副本)。

我对下一个版本进行了略微变化,并认为Xcode的源控件将自动<强>合并将变为2.0.0。我想我错了。所以我试图使用Xcode的源码控制进行合并,这就是事情下坡的地方......它进入了一个循环。所以,我杀了Xcode,然后重新启动它。

现在,我试图使用sourcetree进行合并。它告诉我我在我的工作副本中有一个合并冲突,这是(2.0.0)。看着2.0.0的构建,我看到这个:

      <BreakpointProxy
     BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
     <BreakpointContent
        shouldBeEnabled = "No"
        ignoreCount = "0"
        continueAfterRunningActions = "No"
        filePath = "saori/CalendarViewController.m"
        timestampString = "404851038.443273"
<<<<<<< HEAD                              <---------------- merge conflict
        startingColumnNumber = "9223372036854775807"
        endingColumnNumber = "9223372036854775807"
        startingLineNumber = "205"
        endingLineNumber = "205"
        landmarkName = "-viewDidLoad"
=======
        startingColumnNumber = "9223372036854775807"
        endingColumnNumber = "9223372036854775807"
        startingLineNumber = "205"
        endingLineNumber = "205"
        landmarkName = "-viewDidLoad"
        landmarkType = "5">
     </BreakpointContent>
  </BreakpointProxy>
  <BreakpointProxy
     BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
     <BreakpointContent
        shouldBeEnabled = "No"
        ignoreCount = "0"
        continueAfterRunningActions = "No"
        filePath = "saori/SubViewData.m"
        timestampString = "406167919.038573"
        startingColumnNumber = "9223372036854775807"
        endingColumnNumber = "9223372036854775807"
        startingLineNumber = "221"
        endingLineNumber = "221"
        landmarkName = "-drawRect:"
>>>>>>> 1.8.1
        landmarkType = "5">
     </BreakpointContent>
  </BreakpointProxy>
  <BreakpointProxy
     BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
     <BreakpointContent
        shouldBeEnabled = "Yes"
        ignoreCount = "0"
        continueAfterRunningActions = "No"
<<<<<<< HEAD                                    <------- merge conflict
        filePath = "saori/SubViewData.m"
        timestampString = "406167919.038573"
        startingColumnNumber = "9223372036854775807"
        endingColumnNumber = "9223372036854775807"
        startingLineNumber = "221"
        endingLineNumber = "221"
        landmarkName = "-drawRect:"
=======
.

更新当我做git状态时,我得到以下内容:

# On branch 2.0.0
# You have unmerged paths.
#   (fix conflicts and run "git commit")   
# 
# Changes to be committed:
#
#   new file:   Resized Images/MainStoryboard.strings
#   modified:   saori/AppDelegate.h
#   modified:   saori/AppDelegate.m
#
# Unmerged paths:
#   (use "git add <file>..." to mark resolution)
#
#   both modified:      SalonBook.xcodeproj/project.xcworkspace/xcuserdata/rolfmarsh.xcuserdatad/UserInterfaceState.xcuserstate
#   both modified:      SalonBook.xcodeproj/xcuserdata/rolfmarsh.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   Crashlytics.framework/Versions/Current
#   SalonBook.xcodeproj/xcuserdata/rolfmarsh.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist.BACKUP.5744.xcbkptlist
#   SalonBook.xcodeproj/xcuserdata/rolfmarsh.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist.BASE.5744.xcbkptlist
#   SalonBook.xcodeproj/xcuserdata/rolfmarsh.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist.LOCAL.5744.xcbkptlist
#   SalonBook.xcodeproj/xcuserdata/rolfmarsh.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist.REMOTE.5744.xcbkptlist
.

我的问题是:我如何解决这个问题,所以我可以做合并?

有帮助吗?

解决方案

使用.gitignore从项目中排除断点数据(请参阅我可以从我的git repo中“排除”吗?)。

然后,您需要清除使用.gitignore

从Git索引(缓存)中包含的所有文件中包含的所有文件

git rm -r --cached .
git add .
git commit -m 'Removed all files that are in the .gitignore'
git push 
.

其他提示

修复:(Mac)

  1. 添加gitignore文件:

    • 从终端打开项目的文件夹,然后按$ touch .gitignore
    • 然后按命令:$ vi .gitignore
    • 按字母键:i
    • 在每行中添加icimore文本,例如: pushfor.xcworkspace / xcuserdata / tapaway.xcworkspace / xcuserdata / dang.xcuserdatad / userInterfacestate.xcusstate tapaway.xcworkspace / xcuserdata / dang.xcuserdatad / xcdebugger / tapaway.xcworkspace / xcuserdata / pods / pods.xcodeproj / xcuserdata /
    • 按键盘上的eScape按钮
    • 按$:x(保存它)
    • 检查您的终端上的一切还可以:$ cat .gitignore
  2. 现在按下命令:$ git st,并看看您仍然存在未触发的文件,尽管您只需在gitignore上放在gitignore上,所以这意味着您已经将其推动到git以便修复它: --git - 已浏览(并在此处复制文件)例如: git rm - cached pods / pods.xcodeproj / xcuserdata / dang.xcuserdatad / xcschemes / xcschememanagement.plist

    现在提交和推!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top