如何使用BreakPoint的文件中的冲突修复Git合并?
-
20-12-2019 - |
题
我有一个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)
-
添加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 现在按下命令:$ git st,并看看您仍然存在未触发的文件,尽管您只需在gitignore上放在gitignore上,所以这意味着您已经将其推动到git以便修复它: --git - 已浏览(并在此处复制文件)例如: git rm - cached pods / pods.xcodeproj / xcuserdata / dang.xcuserdatad / xcschemes / xcschememanagement.plist 现在提交和推!
不隶属于 StackOverflow