Introduksjon til EGit

1. Oversikt

I denne artikkelen skal vi utforske EGit - en utvikling av JGit-biblioteket for Eclipse.

2. EGit Setup

I løpet av artikkelen bruker vi følgende verktøy:

  • Eclipse Neon.3 versjon 4.6.3
  • EGit plugin versjon 4.8

2.1. Installere EGit i formørkelse

Fra Eclipse Juno er EGit inkludert i selve formørkelsen.

For eldre versjoner av Eclipse kan vi installere programtillegget gjennom Hjelp -> Installer ny programvare og oppgir URL //download.eclipse.org/egit/updates:

2.2. Identifisere en Commiter

Git må holde oversikt over brukeren bak en forpliktelse, derfor bør vi oppgi identiteten vår når vi forplikter oss via EGit.

Dette gjøres gjennom Innstillinger -> Team -> Git -> Konfigurasjon og klikke på Legg til oppføring å inkludere informasjon for bruker.navn og user.email:

3. Depositorier

3.1. Lagringsplassvisning

EGit kommer med Repositories-visningen som lar oss:

  • Bla gjennom vårt lokale depot
  • Legg til og initialiser lokale arkiver
  • Fjern arkiver
  • Klone eksterne lagringssteder
  • Sjekk ut prosjekter
  • Administrer grener

Klikk på for å åpne arkivvisningen Window -> Show View -> Other -> Git -> Git Repositories:

3.2. Opprette et nytt arkiv

Vi må lage et prosjekt og høyreklikke på det for å velge Team -> Del prosjekt, og Skape.

Herfra velger vi depotkatalogen og klikker Bli ferdig:

3.3. Kloning av et depot

Vi kan klone et lager fra en ekstern git-server til vårt lokale filsystem.

La oss gå til Fil -> Importer ... -> Git -> Prosjekter fra Git -> Neste -> Klon URI -> Neste, og såfølgende vindu vises:

Vi kan også åpne det samme vinduet fra Clone Remote Repository verktøylinjeknappen i Datalagre visningsfanen.

Git støtter flere protokoller som https, ssh, git, etc. Hvis vi limer inn URI for det eksterne depotet, fylles andre oppføringer automatisk.

4. Grener

Det er to typer grener vi skal håndtere:

  • Lokal avdeling
  • Ekstern sporingsgren

4.1. Opprette lokal filial

Vi kan opprette en ny lokalfilial ved å klikke Team -> Repository -> Bytt til -> New Branch:

Vi kan velge den eksterne sporingsgrenen vi vil basere vår lokale filial fra. Hvis du legger til oppstrøms konfigurasjon i de nye lokale filialene, blir det enklere å synkronisere lokale endringer med de eksterne.

Det anbefales å sjekke alternativet i dialogboksen Konfigurer oppstrøms for push and pull.

En annen metode for å åpne den nye grendialogen ved å høyreklikke på grener i Lagringsplassvisning -> Bytt til -> Ny gren

4.2. Sjekke ut filialen

Fra Datalagre visning, høyreklikk på grennavnet og klikk Sjekk ut:

Eller høyreklikk på prosjektet og velg Team -> Bytt til -> velg grennavnet:

5. Spore filer med Git

5.1. Spore endringer

Spørsmålstegn vises på filer som ennå ikke er under Gits kontroll. Vi kan spore disse nye filene ved å høyreklikke på dem og velge Team -> Legg til i indeksen.

Herfra skal dekoratøren skifte til (+) tegn.

5.2. Forplikte endringer

Vi ønsker å forplikte endringer i sporede filer. Dette gjøres ved å høyreklikke på disse filene og velge Team -> Forplikte:

Som standard er forfatteren og kommittøren hentet fra .gitconfig filen i hjemmekatalogen vår.

Vi kan legge inn en meldingsmelding for å forklare endringene. I tillegg ved å klikke på Legg til Signed-off-by ikonet øverst til høyre, kan vi legge til et Signed-off-by stikkord.

5.3. Inspisere historie

Vi kan sjekke historikken til en fil ved å høyreklikke på den og velge Team -> Vis i historien.

En historikkdialog viser alle forpliktede endringer i den inspiserte filen:

Vi kan åpne de siste forpliktede endringene i sammenligningsvisningen ved å klikke på ikonet for sammenligningsmodus øverst til høyre i historikkfanen og deretter dobbeltklikke på filnavnet (her er et eksempel: HelloEgit / src / HelloEgitClass.java) i fillisten:

5.4. Pushing Changes to the Remote Repository

For å presse endringene våre må vi ha et eksternt Git-arkiv.

Fra Team -> Remote -> Push vi kan legge inn https-URL-en til det nye Git-fjernregisteret i en veiviser:

Neste trinn er å:

  • Velg Legg til alle grener spes for å kartlegge lokale filialnavn til de samme filialnavnene i destinasjonsregisteret
  • Trykk på bekreftelsesknappen - veiviseren viser en forhåndsvisning av endrede filer
  • Til slutt klikker vi Bli ferdig for å skyve depotet vårt til det eksterne stedet.

Hvis vi har satt opp oppstrøms konfigurasjon fra avsnitt 4.1, vil denne konfigurasjonsdialogen ikke vises, og skyvingen blir mye enklere.

5.5. Henter fra oppstrøms

Hvis vi jobber med en lokal filial som er basert på en ekstern sporingsgren, kan vi nå hente endringer fra oppstrøms.

For å hente fra oppstrøms, høyreklikker vi på prosjekt og velg Team -> Hent fra oppstrøms (eller ved å høyreklikke på depotet på Lagringsplassvisning og velge Hent fra oppstrøms).

Denne hentingen kan konfigureres ved å høyreklikke på prosjektet og velge Team -> Fjernkontroll -> Konfigurer henting fra oppstrøms:

5.6. Sammenligning og synkronisering

Hvis vi vil se endringene mellom den lokale arbeidskatalogen og en forpliktet endring, kan vi høyreklikke på ressursen og velge Sammenlignet med. Dette åpner Synkroniser visning for å la oss bla gjennom endringene:

Ved å dobbeltklikke på den endrede filen vil sammenligningseditoren åpnes, slik at vi kan sammenligne endringene.

Hvis vi vil sammenligne to forpliktelser, må vi velge Team -> Vis i historien.

Fra historikkvisningen vil vi markere de to forpliktelsene vi vil sammenligne og velge Sammenlign med hverandre alternativ:

Hvis vi ønsker å sammenligne mellom arbeidskatalogen og en gren, kan vi bruke Team -> Synkroniser

5.7. Sammenslåing

Fusjon inkluderer endringer fra en gren eller tag i den for tiden utsjekkede grenen.

Vi kan slå sammen ved å klikke Team -> Slå sammen eller ved å høyreklikke på depotnavnet i repositories-visningen og velge Slå sammen:

Nå kan vi velge grenen eller taggen som vi vil slå sammen med den utsjekkede grenen.

6. Konklusjon

I denne veiledningen introduserte vi EGit-pluginet for formørkelse, hvordan du installerer og konfigurerer det og hvordan du bruker det i vår daglige utvikling.

For mer informasjon om EGit, sjekk den offisielle dokumentasjonen her.