ムハンマドの答えは非常に役に立ちました(そして私の修正につながりました)。ただし、>>>>>>> ======= <<<<<<<を削除するだけでは、両方のブランチからの変更を保持するときに、project.pbxproj(私にとって)の解析の問題を修正するには不十分でしたマージ後。
project.pbxprojファイルのPBXGroupセクション(先頭は次のようなブロックコメントで示されます:/ * Begin PBXGroup section * /)でマージの競合がありました。ただし、発生した問題は、project.pbxprojファイルの他の場所でも発生する可能性があります。
以下は、私が遭遇したマージの競合を単純化したものです。
<<<<<<< HEAD
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
=======
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
>>>>>>> branch name
sourceTree = "<group>";
};
マージ競合マーカーを削除したとき、これは私が残したものです:
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
sourceTree = "<group>";
};
通常、マージ競合マーカーを削除すると、project.pbxprojファイルの解析の問題が修正され、ワークスペースの整合性が復元されます。今回はしませんでした。
以下は私が問題を解決するためにしたことです:
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
sourceTree = "<group>";
};
id = {
isa = PBXGroup;
children = (
id
);
name = "Your Group Name";
sourceTree = "<group>";
};
実際には、最初のPBXGroupの最後に2行追加する必要がありました。
Headまたはマージブランチのいずれかからの変更を破棄することを選択した場合、解析の問題はなかったことがわかります。ただし、私の場合は、各ブランチから追加した両方のグループを保持する必要があり、マージマーカーを削除するだけでは不十分でした。正しいフォーマットを維持するために、project.pbxprojファイルに行を追加する必要がありました。
したがって、マージの競合をすべて解決したと思った後で解析の問題が発生している場合は、.pbxprojを詳しく調べて、フォーマットの問題がないことを確認してください。