trabajando en equipo con git y githubcticdominicana.com/wp-content/uploads/2016/12/git... · $...
Post on 21-Sep-2020
2 Views
Preview:
TRANSCRIPT
Trabajando en Equipo con
Git y Github
harysvizcaino@gmail.com
Harys Vizcaino
@harysvizcaino
Agenda
• Conocermejorloscommit• Repositoriosremotos• Fetch• Pull• push• branches• Merge• Conflictos• Fork• Pull request
Extras
• Git ignore• Zenhub• Nomellevomuchoconla
Consola
$ git commit
El‘commit’nosayudaaguardarloscambiosquefueronhechosaunarchivoodirectorioennuestroregistrodegit.
Importante:cuandohacemosuncommit elcommit nospediraqueintroduzcamosunmensaje,esrecomendablequeestemensajecontengaunpocodeinformaciónde‘queexactamentetocamosenelcodigo oeneldirectorioyelporque’.
git commit –m“MENSAJE”
$ Moviendonos entre commits
Encualquiermomentopodemosquererdeshacercambios,modificaruncommit ovolveraalgúnestadoanteriordenuestroproyecto.git commit
$ git commit --amend
Estecomandoutilizaloquehayaentuáreadepreparaciónparaelcommit.Sinohashechoningúncambiodesdelaúltimaconfirmación(porejemplo,siejecutasestecomandojustodespuésdetucommit anterior),estainstantáneaseráexactamenteigual,yloúnicoquecambiarásseráelmensajedeconfirmación.
git commit --amend
$ git checkout ID
Congit checkout podemosmovernosentrer commits yentrebranches,haciendoungit checkout IDdelcommit podemosregresarauncommit anterioryvercomoestabanuestrocódigoonuestrodirectorioeneseentonces,tambiénpodemosmodificarcosas,soloqueparatraeresoscambiosalpresentenecesitaríamoscrearunnuevobranch yluegohacerunmerge deestebranch
$ Trabajando con Repositorios remoto
ParapodercolaborarencualquierproyectoGit,necesitassabercómogestionartusrepositoriosremotos.LosrepositoriosremotossonversionesdetuproyectoqueseencuentranalojadosenInternetoenalgúnpuntodelared.Puedestenervarios,cadaunodeloscualespuedeserdesólolectura,odelectura/escritura,segúnlospermisosquetengas.Colaborarconotrosimplicagestionarestosrepositoriosremotos,ymandar(push)yrecibir(pull)datosdeelloscuandonecesitescompartircosas.
$ git clone [ url ]
git cloneurl
SideseasobtenerunacopiadeunrepositorioGitexistente—porejemplo,unproyectoenelquetegustaríacontribuir— elcomandoquenecesitases git clone
$ git remote
Paraverquérepositoriosremotostienesconfigurados,puedesejecutarelcomando git remote.Mostraráunalistaconlosnombresdelosremotosquehayasespecificadoelrepositorioquehemosclonadodebeaparecercomo"origin"
$ Agregando repositorios remotos
Paraagregarunrepositorioremotousamoselcomando‘gitremote ’conlaopción‘add ’seguidodelnombreconelquenombraremoselenlacedelrepositoriomaslaurl delrepositorio
git remote add [nombre][url]
$ git fetch & git pul l
git fetch: Estecomandorecuperatodoslosdatosdelproyectoremotoquenotengamosaunennuestrocopialocaldelproyecto.Luegodeejecutarestecomandodeberíamostenerreferenciaatodaslasramasdelrepositorio.git pull:pararecuperaryunirautomáticamentelaramaremotaconturamaactual.
$ git push
Cuandotuproyectoseencuentraenunestadoquequierescompartir,tienesqueenviarloaunrepositorioremoto.Elcomandoquetepermitehacerestoessencillo: git push Siquieresenviarturamamaestra(master)atuservidororigen(origin),ejecutaríasestoparaenviartutrabajoalservidor:
git push [nombre-remoto][nombre-rama].
$ El iminando y renombrando repos i tor ios remotos
Siqueremosrenombrarunareferenciaaunrepositorioremoto,podemosejecutarelcomandogit remote rename encasoquequeramoseliminarelrepositoriopodemosejecutarelcomandogit rm
$ Branches [ git branch ]
Las‘ramas’branches esesencialmenteunalíneadedesarrolloindependiente.Podemostomarventajadeellascuandosetrabajaennuevos‘features’oarreglandoerrores‘bugs’.
$ git & github
C0 C2C1
master
$ git & github
C0 C2C1
nosotros
master
$ git & github
C0 C2C1
nosotros
master
C3
$ git & github
C0 C2C1
nosotros
master
C3
C4
bug
C0 C2C1
nosotros
master
C3
C4
bug
C0
C5
C1
nosotros
master
C3
C4C2
C0
C5
C1
nosotros
master
C3
C4C2
C0
C5
C1
nosotros
C3
C4C2 C6
master
$ git confl ict
Elalgunasocasiones,losprocesosdefusión‘merge’nosuelensertanfluidoscomoenloscasosanteriores,sihaymodificacionesdisparesendistintasramasgit noserácapazdefusionarlasdirectamente.Sialguienmodificolamismaporsiondecódigoquemodificamosennuestraramacuantointentemoshacerlafusiónsecrearaunconflictodefusion.
$ git fork & contribuir a proyectos de terceros
Hacerunfork deunrepositorionospermiteexperimentarlibrementeconcambiossinafectarunproyectooriginal.
Elusomascomúndefork esparaproponercambiosaproyectosdealguienmasoparausarelproyectodealguienmascomopuntodeiniciodenuestropropioproyecto.
$ Mantener el proyecto actual izado
Paramantenerelproyectoactualizadoagregamoselproyectooriginal‘proyectodesdeelrealizamoselfork’comounproyectoremotoyhacemosfetch yluegoelmerge.
1– agregamoselproyectooriginalcomoremotogit remote add upstream [url]
2- hacemoselfetch delproyectoparadescargartodosloscambiosrelizadosen enelproyectooriginalgit fetch nombredadeo [upstream]
3– nosmovemosamaster(encasoquenoestemosenmaster)yhacemosmerge delproyectoonlineennuestroproyectolocal.git merge upstream/master
$ Pul l request
Básicamenteunpull request esunapeticiónparaintegrarnuestraspropuestas ocambiosdecódigo aunproyecto.
Cuandoestamostrabajandocomopartedeunequipo,debemosserunpocomascuidadosos,esalli dondeentraenjuegoelusodelospull request.
$ Git Ignore
Unarchivogitignore especificalosarchivosquequeremosquegit ignoredeformaintencionallosarchivosyaconocidosporgit nosevenafectados.
F-!-N
harysvizcaino@gmail.com
Harys Vizcaino
@harysvizcaino
top related