Je travaille sur une application avec un autre développeur et ils viennent de soumettre une version à l'App Store qui a été construite sur leur ordinateur. Afin de créer une build sur ma machine (qui appartient au même commit git), je dois modifier le chemin vers l'une des bibliothèques que nous utilisons dans mon projet XCode. Les modifications que j'apporterai au fichier de projet XCode changeront-elles le dSYM? Si je pouvais faire une construction sans modifier le fichier de projet XCode, le fichier dSYM serait-il le même?
Un fichier dSYM est un "fichier de symboles de débogage". Il est généré lorsque le paramètre "Strip Debug Symbols" est activé dans les paramètres de génération de votre projet.
Lorsque ce paramètre est activé, les noms de symboles de vos objets sont supprimés du binaire compilé résultant (l'une des nombreuses contre-mesures à essayer et à empêcher serait les pirates/crackers de l'ingénierie inverse de votre code, entre autres optimisations pour la taille binaire, etc.).
les fichiers dSYM changeront probablement à chaque fois que votre application est compilée (probablement à chaque fois en raison de l'horodatage) et n'ont rien à voir avec les paramètres du projet.
Ils sont utiles pour re-symboliser vos rapports de plantage. Avec un binaire dépouillé, vous ne pourrez pas lire les rapports de plantage sans les re-symboliser au préalable. Sans le dSYM, le rapport de plantage affichera simplement les adresses mémoire des objets et des méthodes. Xcode utilise le dSYM pour remettre les symboles dans le rapport de plantage et vous permettre de le lire correctement.
Idéalement, votre fichier dSYM ne devrait pas être suivi dans votre dépôt git. Comme d'autres binaires qui changent lors de la construction, il n'est pas utile de les garder sous contrôle de code source. Cependant, cela dit, il est important que vous conserviez les fichiers dSYM pour chaque version distribuée (bêta, communiqués de presse, distributions de l'App Store, etc.) dans un endroit sûr afin de pouvoir symboliser les rapports d'erreur que vous pourriez obtenir. Xcode le fait automatiquement pour vous lorsque vous utilisez l'option Archive. L'archive créée contient votre application et son dSYM et est stockée dans le répertoire de données dérivé de Xcode.