Usar Git con un proyecto Xcode existente

113

Estoy tratando de averiguar cómo usar git en el flujo de trabajo de mi proyecto, y tengo un proyecto de 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 comienzas un nuevo proyecto, pero ¿cómo importo un proyecto existente con instantáneas y todo?

Estoy usando Xcode 4 y git 1.7.4

Además, si hay buenos tutoriales sobre la configuración de git y las mejores prácticas, sería bueno. Llego un poco tarde al juego, así que cualquier cosa que me ponga al día sería genial.

AndyD273
fuente

Respuestas:

169

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

para realizar la configuración inicial de un repositorio, abra una ventana de terminal y CD al directorio del proyecto. una vez allí, escribe

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

Reinicie Xcode. El repositorio ahora debería estar configurado y podrá administrarlo en xcode 4.

MCannon
fuente
4
¿Dónde está la parte de agregar un archivo .gitignore para evitar agregar todos los directorios de compilación y otras tonterías como archivos de seguimiento?
Fraggle
7
Este método agregaría .xcuserstate y otros metadatos al repositorio, que no debe estar controlado por versiones. Le sugiero que primero cree .gitignore en la carpeta de su proyecto y enumere esos tipos de archivos de metadatos antes de ejecutar "git add".
kakyo
No funcionó para mí en absoluto. Xcode nunca lo reconoce como un repositorio.
Jonny
Estoy usando Xcode 11. Pude agregar un repositorio de git local a un proyecto existente simplemente haciendo Source Control, Commit y luego haciendo mi primera confirmación. Eso creó la carpeta .git, etc. (No es necesario el git init, git add .y git commit -m.)
Jeff
103

Xcode 7 (y 8)

Si estaba comenzando un nuevo proyecto, simplemente marcaría Crear repositorio Git durante la configuración. (Luego pase a la parte de compromiso a continuación).

ingrese la descripción de la imagen aquí

Pero si está trabajando con un proyecto existente, vaya a Xcode > Preferencias ... > Control de fuente y marque la casilla Habilitar control de fuente .

ingrese la descripción de la imagen aquí

Luego, en el principal control de origen de menú seleccione Crear copia de trabajo ... .

ingrese la descripción de la imagen aquí

(Si aparece el error "Por favor, dígame quién es", consulte esta pregunta / respuesta o una de las otras preguntas vinculadas allí).

Cuando haya terminado, realice cualquier cambio en uno de sus archivos de proyecto de Xcode. Luego regrese al menú Control de fuente y elija Confirmar .

ingrese la descripción de la imagen aquí

Y escriba un mensaje de confirmación y haga clic en el botón Confirmar . (Si el botón de confirmación está deshabilitado, realice cualquier cambio menor en su proyecto y vuelva a intentarlo).

ingrese la descripción de la imagen aquí

En Github, inicie sesión y cree un nuevo repositorio .

ingrese la descripción de la imagen aquí

Llámelo como quiera, pero no agregue un README o .gitignore o licencia todavía. Puedes agregar esas cosas más tarde. Si lo hace ahora, la sincronización será más difícil.

ingrese la descripción de la imagen aquí

Copie el enlace a su repositorio.

ingrese la descripción de la imagen aquí

Vaya a Control de fuente > nombre de su sucursal > Configurar .

ingrese la descripción de la imagen aquí

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

ingrese la descripción de la imagen aquí

Ingrese el nombre del repositorio de github y pegue la dirección.

ingrese la descripción de la imagen aquí

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

(Tuve algunos problemas para que mi nombre de usuario y contraseña fueran aceptados al principio. Si eso te sucede, ve a Xcode > Preferencias ... > Cuentas > tu nuevo repositorio . Ingresa tu nombre de usuario y contraseña allí y luego intenta Push nuevamente).

ingrese la descripción de la imagen aquí

Puede agregar un archivo README y otros archivos, pero si lo hace desde la web, tendrá que hacer Control de fuente > Extraer Xcode antes de confirmar otros cambios.

Ahora, cada vez que realice cambios en Xcode, todo lo que tiene que hacer es confirmar y enviar .

Aprendí este método principalmente desde aquí .

Ver también

Suragch
fuente
esta es la solución más fácil con diferencia. ¿Puedes decirme qué significa cuando agregas un repositorio en xcode> preferencias> cuentas> agregar repositorio?
AceN
@AceNeerav, esto le permite almacenar sus credenciales para otro repositorio que tenga para que no tenga que ingresarlas cada vez. Consulte esta documentación para obtener más detalles.
Suragch
Gran solucion SUGERENCIA: Bitbucket es una alternativa gratuita a github para proyectos pequeños. Pagas una vez que el proyecto crece.
steve-o
1
@ steve-o, GitLab también es una buena alternativa. Permite repositorios privados de forma gratuita. Pude configurar Xcode para usarlo de manera similar a mi respuesta anterior.
Suragch
gracias siguiendo la respuesta de url, puedo hacerlo yo mismo, muchas gracias una vez más
Dilip Tiwari
44

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

  1. Abra el terminal y cd en el directorio que contiene el archivo .xcodeproj
  2. git init
  3. En el buscador, ingrese la carpeta .git recién creada (en el mismo directorio que el archivo .xcodeproj). Encuentre información / excluya, abra y agregue estas líneas, .DS_Store y xcuserdata /
  4. No estoy seguro de si esto es necesario, pero usé la terminal para cp info / 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 vuelva a abrir el proyecto para recuperarlo. Esto detectará el repositorio GIT recién creado
  8. En la pestaña de repositorios del organizador, luego desvío la rama principal / cambio a la versión en la que esté trabajando.

Ojalá esto ayude a alguien sin ser demasiado redundante. Lo que ahora parece simple fue definitivamente un desafío para alguien nuevo en GIT con proyectos existentes.

nuclearnova
fuente
2
¡Gracias por compartir su experiencia! El paso a paso es genial.
AndyD273
Excelente paso a paso, muy útil para alguien como yo que aún no se siente cómodo con git.
Nicolas Miari
1
Para mí, con 4.6.2, el paso 7 no era necesario. ¡Gracias!
cloudsurfin
¡No puedo explicar lo útil que fue esto! ¡El paso 7 ayudó incluso con el último Xcode!
Zephyer
Como aprendí siguiendo los pasos anteriores y algunas otras publicaciones y experiencia en svn. Puede crear un archivo .gitignore para Xcode. Enumere si los elementos para ignorar se pueden encontrar en GitHub github.com/github/gitignore/blob/master/Global/Xcode.gitignore
Bhavesh
1

si su XCODE 7 no se conecta con el repositorio GIT existente. Intenta seguir

xcrun git config --global user.email your@email.com
xcrun git config --global user.name "your name"
Ram G.
fuente
0

Note:Specially for Xcode 11

CD al directorio del proyecto usando terminal

git init

git add.

git commit -m "Confirmación inicial"

Después de esto, reinicie el Xcode y elija Source Control Navigator y luego seleccione el maestro y haga clic derecho y luego elija la opción "Create Remote"

Vikram Sinha
fuente