ブレークポイントのファイルに競合がある Git マージを修正するにはどうすればよいですか?
-
20-12-2019 - |
質問
iPad アプリ (XCode 5、iOS 7、Git ソース コントロール、および Storyboards) を持っています。現在作業中のブランチが 2 つあります (App Store の 1.8.1、および作業コピーとして 2.0.0)。
次のリリースに向けて 1.8.1 にわずかな変更を加えたところ、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 status を実行すると、次のような結果が得られます。
# 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
プロジェクトからブレークポイント データを除外するには (「 どの Xcode プロジェクト ファイルを Git リポジトリから「除外」できますか?).
次に、以下に含まれるすべてのファイルをクリアする必要があります。 .gitignore
git インデックス (キャッシュ) から使用して git rm -r --cached
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
- 各行に追加します。たとえば、次のようなテキストを無視します。 PUSHFOR.XCWORKSPACE / XCUSERDATA / tapaway.xcworkspace / xcuserdata / dang.xcuserdatad / userinterfaceState.xcusState. tapaway.xcworkspace / xcuserdata / dang.xcuserdatad / xcdebugger / tapaway.xcworkspace / xcuserdata / POD / PODS.XCODEPROJ / XCUSERDATA /
- キーボードのエスケープボタンを押す
- $:x(保存する)
- あなたのターミナルですべてをチェックすることは問題ありません:$ cat .gitignore
-
コマンドを押す:$ GIT STとあなたがgitignoreに置かれているにもかかわらずそれでもトラックされていないファイルを持っているのを見てください。 -git - キャッシュ(ここでファイルをコピー)します。 git rm - キャッシュされたポッド/ pods.xcodeproj / xcuserdata / dang.xcuserdatad / xcschemes / xcschememanagement.plist
今コミットしてプッシュ!