2011-03-21 15 views
108

Estoy tratando de descubrir cómo usar git en el flujo de trabajo de mi proyecto, y tengo un proyecto XCode existente que quiero poner en el repositorio. Creo que tengo el repositorio configurado correctamente en el organizador, pero el menú de Control de Fuente está atenuado.
Aparentemente, es fácil de hacer si comienza un nuevo proyecto, pero ¿cómo importo un proyecto existente con instantáneas y todo?Uso de Git con un proyecto XCode existente

estoy utilizando XCode 4 y Git 1.7.4

Además, si hay buenos tutoriales sobre la configuración de Git y mejores prácticas, que estaría bien. Llego un poco tarde al juego, por lo que cualquier cosa que pueda ponerme al día sería genial.

Respuesta

163

GitHub tiene algunos muy buenos tutoriales de git en help.github.com.

para realizar la configuración inicial de un repositorio, abrir una ventana de terminal y un CD en el directorio del proyecto. una vez allí, escriba

git init 
git add . 
git commit -m "Initial commit" 

Restart Xcode. El repositorio ahora debe configurarse, y podrá administrarlo en xcode 4.

+3

¿Dónde está la cuestión de agregar un archivo .gitignore para evitar agregar todos los directorios de compilación y otras porquerías como archivos rastreados ??? – Fraggle

+6

Este método agregaría .xcuserstate y otros metadatos al repositorio, que no deberían ser controlados por la versión. Le sugiero que primero cree .gitignore en su carpeta de proyectos y enumere los tipos de archivos de metadatos antes de ejecutar "git add". – kakyo

+0

No funcionó para mí en absoluto. Xcode nunca lo reconoce como un repositorio. – Jonny

9

Consulte mi publicación sobre este tema Setting up a git repository in XCode for a pre-existing project. Lo anterior es correcto, pero incluirá UserInterfaceState en sus cambios a medida que se compromete y esto podría ser molesto porque este archivo se actualiza cada vez que hace algo en xcode, incluso si es tan simple y navega por los archivos o carpetas de su proyecto.

+0

Buena información. Gracias por este consejo – AndyD273

44

Acabo de pasar por el proceso de hacer esto para varios proyectos, y encontré algunos problemas. Aquí estaba mi proceso, principalmente reconstruido a partir de las otras respuestas en esta página/sitio. El orden es muy importante aquí

  1. Abrir el terminal y cd en el directorio que contiene el archivo .xcodeproj
  2. init git
  3. En buscador de entrar en la carpeta .git de nueva creación (en el mismo directorio que el archivo .xcodeproj) Encuentra información/excluir, abierto y añadir estas líneas, .DS_Store y xcuserdata/
  4. No estoy seguro si esto es necesario, pero he usado el terminal de información cp/excluir a un archivo .gitignore
  5. git add.
  6. git commit -m "Confirmación inicial"
  7. Ahora, para que XCode vea realmente el repositorio. En el organizador del proyecto, primero debe eliminar el proyecto de la pestaña Proyectos. Luego simplemente vuelve a abrir el proyecto para recuperarlo. Esto detectará el repositorio de GIT recién creado.
  8. En la pestaña de repositorios del organizador, a continuación ramifico la rama/interruptor principal a la versión en la que estoy trabajando.

Esperemos que esto ayude a alguien sin ser demasiado redundante. Lo que ahora parece sencillo fue sin duda un reto para alguien nuevo en GIT con los proyectos existentes

+2

¡Gracias por compartir tu experiencia! El paso a paso es genial. – AndyD273

+0

Excelente paso a paso, muy útil para alguien como yo que aún no se siente cómodo con git. –

+1

Para mí, con 4.6.2, el paso 7 no era necesario. ¡Gracias! – cloudsurfin

93

Xcode 7 (y 8)

Si estaba comenzando un nuevo proyecto que acaba de comprobar Crear repositorio Git durante la configuración. (Luego salte a la parte de compromiso a continuación).)

enter image description here

Pero se está trabajando con un proyecto ya existente, vaya a Xcode> Preferencias ... >Fuente de control y comprobar el Habilitar control de código fuente caja.

enter image description here

Luego, en el menú principal de control Fuente elegir Crear copia de trabajo ....

enter image description here

(Si se obtiene un "Por favor, dime quién eres" Error al ver this question/answer o una de las otras cuestiones vinculadas allí.)

Cuando eso ha terminado, realiza cualquier cambio en uno de tus archivos de proyecto de Xcode. Luego regrese al Source Control menú y elija Commit.

enter image description here

y escribir un mensaje de confirmación y haga clic en el botón deCommit. (Si el botón está desactivado comprometerse, a continuación, hacer que cualquier pequeño cambio en su proyecto y vuelve a intentarlo.)

enter image description here

En Github signo y create a new repository.

enter image description here

llamar lo que quieras, pero no añadir un README o .gitignore o licencia todavía. Puedes agregar esas cosas más tarde. Hacerlo ahora hará que la sincronización sea más difícil.

enter image description here

Copiar el enlace a su repositorio.

enter image description here

Ir a control de código fuente>su nombre de la sucursal> Configurar .

enter image description here

Haga clic en los mandos a distancia pestaña> botón "+ ">Añadir a distancia ....

enter image description here

Introduzca el nombre del repositorio GitHub y pegar en la dirección.

enter image description here

Después de agregar el control remoto, haga clic en empuje en el menú de control de código fuente . Ingrese su nombre de usuario y contraseña de github. Eso es. Tu proyecto debe copiarse en github ahora.

(he tenido algunos problemas para conseguir mi nombre de usuario y aceptado en un primer momento contraseña. Si eso sucede a ir a Xcode> Preferencias ... >Cuentas>su nuevo repositorio. Introduzca su nombre de usuario y la contraseña allí y vuelva a intentar la empuje de nuevo.)

enter image description here

se puede añadir un README y otros archivos, pero si lo haces desde la web, se le h ave to do Source Control>Tire en Xcode antes de confirmar otros cambios.

Ahora cualquier momento que haga cambios en Xcode, todo lo que tiene que hacer es Commit y empuje.

Aprendí este método principalmente de here.

Ver también

+0

esta es la solución más fácil de lejos. ¿Puede decirme qué significa cuando agrega un repositorio en xcode> preferences> accounts> add repo? – AceN

+0

@AceNeerav, Esto le permite almacenar sus credenciales para otro repositorio que tenga para que no tenga que ingresarlas cada vez. Consulte [esta documentación] (https://developer.apple.com/library/ios/recipes/xcode_help-accounts_preferences/articles/add_repository.html) para obtener más detalles. – Suragch

+0

Gran solución.CONSEJO: Bitbucket es una alternativa gratuita a github para proyectos pequeños. Usted paga una vez que el proyecto se agranda. –

1

si su XCODE 7 no se conecta con el repositorio Git existente. Intente seguir

xcrun git config --global user.email [email protected] 
xcrun git config --global user.name "your name" 
Cuestiones relacionadas