elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Foros Generales
| |-+  Dudas Generales (Moderador: engel lex)
| | |-+  Iniciandome en GIT
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Iniciandome en GIT  (Leído 3,822 veces)
n-utz

Desconectado Desconectado

Mensajes: 165

Babylon es el vampiro!


Ver Perfil
Iniciandome en GIT
« en: 27 Agosto 2017, 18:30 pm »

Buenas gente, la verdad que quería evitarme este post pero estoy tirando comandos sin saber que hacen bien hace rato sin conseguir resultados.

Estoy usando por primera vez git, con git bash.

Resulta que tenemos un proyecto entre 4 personas, para la facultad, yo soy simplemente un colaborador, no master.

El primer paso para empezar a entender git era simplemente subir una carpeta con el nombre Documentacion tecnica, pero no estoy teniendo suerte.

Les cuento lo que hice hasta ahora:

Código:
$git init    //En mi carpeta local
$git remote add origin {url de repo de github}

Luego, agregue una carpeta en mi carpeta local llamada Documentacion tecnica, para poder subirla, leí que debía tener por lo menos un archivo, leí que por convención se suele agregar .keep, entonces agregue un .keep.txt dentro de la carpeta de Documentación técnica.

Código:
$git status    //Para corroborar que me tome los cambios, y si los tomo.
$git commit -m "Subo carpeta de dcumentacion tecnica"

Hasta acá todo bien, pero cuando quise pushear es cuándo empezó el problema.

Código:
$git push origin master

Leí que para pushear había que tirar ese comando, pero al tirarlo me sale:

Código:
To https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to 'https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Entendí que me falta pullear antes, entonces puse, como leí por ahí:

Código:
$git pull origin master

//ESTO ME DEVUELVE:

From https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes
 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories


Y ahí me estanqué y es cuándo empecé a tirar comendos sin saber bien qué es lo que hacían.

De algo me estoy perdiendo y no entiendo ni puedo encontrar que es. Entiendo que es algo de merge y las branch, pero sinceramente no sé cómo proseguir.

Acepto también algún documento que tenga bien explicado todos los comandos y cómo iniciarte en git, todos los que encontré explican bastante a las apuradas o mal.

Gracias gente.


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Iniciandome en GIT
« Respuesta #1 en: 27 Agosto 2017, 18:44 pm »

basicamente lo que pasó fue que

Código:
brach master
cada "o" es un commit

--o--o--o--o--o--o
           ^
tu estás aquí

para poder hacer el push al master tienes que estar en la punta, es decir, tener el ultimo commit, modificar el contenido en base a el y pushear en la punta, por eso te pide hace pull, para que te actualizes hasta la punta y luego publiques allí... pero cuidado porque el pull descartará tus campos actuales...

aquí tienes varias opciones

-copias tus cambios a otra carpeta, haces pull mueves los campos de vuelta y commit y push
-pides que te den un branch aparte y que el gitmaster la unifique al master cada vez que sea necesario
- usas un commit forzado (git push -f master) ojo... si no tenías los cambios que hizo el ultimo, se perderán....
-usas git stash... es lo más sano
Citar
git stash # guardas tus cambios al "baul"
git pull me@github.com/myrepo.git #"halas los cambios nuevos
git stash apply #aplicas el contenido del baul sobre el contenido actual
git commit # commit

cuidado que si hay cambios por otras personas en los mismos archivos que tu haces, se perderán (dah)




En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
n-utz

Desconectado Desconectado

Mensajes: 165

Babylon es el vampiro!


Ver Perfil
Re: Iniciandome en GIT
« Respuesta #2 en: 27 Agosto 2017, 18:49 pm »

Perfecto, entiendo la teoría de git pero no sé cómo aplicarla.

Ahora lo que estoy haciendo es una prueba para saber como pushear y pullear, acabo de mover el directorio que había creado, es decir la carpeta Documentacion tecnica, fuera del repositorio y tire un:

Código:
$git pull remote origin

//RESPONSE:

fatal: 'remote' does not appear to be a git repository
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

Quiero aclarar que cuando pongo:

Código:
$git remove -v

origin apunta a la url correcta, no entiendo por qué no me deja pullear. ¿Será tema de permisos?, pero tenía entendido que por default git te da permisos, y para negartelos el master debería quitartelos, no creo que lo haya hecho, tiene menos conocimientos de git que yo jaja

Y para saber, en esta línea:

Código:
git pull me@github.com/myrepo.git #"halas los cambios nuevos

El me@github.com/myrepo.git representaría simplemente mi mail para el login?
En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Iniciandome en GIT
« Respuesta #3 en: 27 Agosto 2017, 18:51 pm »

Código:
git pull remote origin

quien es remote? tienes que pasarle la cadena completa, el .git como te lo da github
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
n-utz

Desconectado Desconectado

Mensajes: 165

Babylon es el vampiro!


Ver Perfil
Re: Iniciandome en GIT
« Respuesta #4 en: 27 Agosto 2017, 19:24 pm »

Le estaba errando a la URL evidentemente.

Que va, ahora tengo la .git, logré encontrarla, entonces probé ambas formas:

Código:
git pull https://github.com/user/ProjectNAME.git origin

#RESPONSE:

fatal: Couldn't find remote ref origin

Entonces hice:

Código:
$ git remote set-url origin https://github.com/user/ProjectNAME.git

$git pull origin master

#RESPONSE:

From https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes
 * branch            master     -> FETCH_HEAD
fatal: refusing to merge unrelated histories

En fin, corregí la url y me sigue tirando lo mismo, la verdad no entiendo. ¿Me estoy salteando algo de la configuración?


EDIT: por si te sirve de algo para ayudarme.

Código:
$ git remote show origin
* remote origin
  Fetch URL: https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes.git
  Push  URL: https://github.com/SeminarioLenguajes/Seminario-de-Lenguajes.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (local out of date)
« Última modificación: 27 Agosto 2017, 19:28 pm por n-utz » En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: Iniciandome en GIT
« Respuesta #5 en: 27 Agosto 2017, 19:28 pm »

mejor usa un editor visual mientras te adaptas a los internals de git... exíste uno que es libre para uso personal que se llama SmartGit
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Iniciandome en ASM
ASM
Keyen Night 2 3,461 Último mensaje 15 Enero 2010, 19:34 pm
por Eternal Idol
Iniciandome en C++
Ejercicios
SSantiago90 2 5,507 Último mensaje 24 Enero 2015, 02:46 am
por valen7valverde
Uno más iniciándome
Hacking
Fyrox 0 2,108 Último mensaje 24 Agosto 2012, 06:45 am
por Fyrox
Iniciandome en C
Programación C/C++
hlastras 9 4,083 Último mensaje 23 Noviembre 2012, 15:43 pm
por rir3760
Iniciandome en Dev-C++
Programación C/C++
YelrishGD 1 1,986 Último mensaje 21 Agosto 2017, 07:06 am
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines