Xcode iOS usando git

He configurado un repository bitbucket y lo he configurado en mi Organizador. Creé un .gitignore básico y lo agregué a la raíz de mi proyecto. Intenté confirmar todos los files, pero continúa diciendo que hay files no confirmados cuando bash presionar.

Los files no comprometidos son:

  • .DS_Store
  • project.pbxproj
  • UserInterfaceState.xcuserstate

Ya he puesto * .xcuserstate en mi .gitignore.

¿Algunas ideas?

Solía ​​tener este mismo problema todo el time.

Primero, cierre Xcode. Esto solo continuará generando los cambios xcuserstate que seguirán apareciendo. Abra su carpeta de proyecto, necesitamos sacar el estado de usuario de allí. Si hace clic derecho en su file .xcodeproj, select Mostrar contenido del package. Esto te permitirá ver todo lo que se esconde allí. Puede eliminar el file .xcuserdata allí. Esto puede perder su estado Xcode, como qué carpetas abrió, tabs, etc. Pero no debería dañar su proyecto de ninguna manera. Simplemente creará otro la próxima vez que abra Xcode.

A continuación, abra la Terminal. Esta es la mejor manera de manejar este problema. Asegúrese de estar en el directory de su proyecto dentro de la terminal. Si no está seguro, escriba cd y arrastre y suelte la carpeta del proyecto en la Terminal para cargar el nombre de la location.

 rm .DS_Store 

Esto eliminará el file de carpeta oculta que crea Mac OS. No te preocupes por eso Cierre la carpeta del proyecto si aún no lo hizo, o simplemente creará otra.

Con suerte, si ha llegado hasta aquí, puede ejecutar el git status en la terminal en esta configuration actual y debería ver un post que muestra solo el file que falta para confirmar. El file pbxproj. Si es así, genial!

 git add project.pbxproj git commit -m "Put some commit message for this file" 

Esto debería agregar su file de proyecto y confirmarlo y aclarar las cosas. Un estado de git debería mostrar que su repository es gratuito y está libre de todos sus files sin seguimiento y no confirmados.

Con un poco de suerte, cuando enciendes Xcode nuevamente y esos files se crean, tu file gitignore debería activarse e ignorarlos para futuros commits. Esto solía sucederme mucho cuando recién comencé con git. Finalmente aprendí a verificar primero el file de ignorar antes de agregar cualquier file fuente de Xcode. Espero que esto ayude.

Deberá eliminar el file del repository y confirmar la eliminación del file .gitignore para comenzar a ignorarlo. No ignorará los files que ya están presentes.

Parece que agregaste estos files al repository antes de configurar tu gitignore.

Tendrás que eliminarlos por completo primero. Mira esta publicación: Ignora los files que ya han sido enviados a un repository de Git.

Por lo general tengo lo siguiente:

 .DS_Store *.log xcuserdata build/* .svn 

Bueno, svn es solo porque hay una cierta mezcla de control de versiones, y la carpeta de compilation no es necesaria desde Xcode 4.4. Creo que esta versión almacena las construcciones en otro lado, pero puedes anularlas si quieres. Es bueno save eso.

project.pbxproj es en realidad su file de proyecto, lo necesita aunque se volverá molesto si está en un equipo, ya que otros desarrolladores cambian sus perfiles de firma de código en el proyecto: consejo: los perfiles de aprovisionamiento de equipos de iOS son su amigo.

Aquí está mi file .gitignore (no ignore project.pbxproj):

 .bundle db/*.sqlite3 log/*.log tmp/ .DS_Store