Introduktion til EGit

1. Oversigt

I denne artikel skal vi udforske EGit - en udvikling af JGit-biblioteket til Eclipse.

2. EGit-opsætning

I løbet af artiklen bruger vi følgende værktøjer:

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

2.1. Installation af EGit i Eclipse

Fra og med Eclipse Juno er EGit inkluderet i Eclipse selv.

I ældre versioner af Eclipse kan vi installere pluginet igennem Hjælp -> Installer ny software og tilvejebringelse af URL //download.eclipse.org/egit/updates:

2.2. Identificering af en kommissær

Git skal holde styr på brugeren bag en forpligtelse, derfor skal vi give vores identitet, når vi foretager forpligtelser via EGit.

Dette gøres igennem Præferencer -> Team -> Git -> Konfiguration og klikke på Tilføj post at medtage information til bruger.navn og user.email:

3. Opbevaringssteder

3.1. Visning af arkiver

EGit kommer med Repositories-visningen, der giver os mulighed for at:

  • Gennemse vores lokale lager
  • Tilføj og initialiser lokale arkiver
  • Fjern arkiver
  • Klon fjernopbevaringssteder
  • Tjek projekter
  • Administrer grene

Klik på for at åbne repositories-visningen Vindue -> Vis visning -> Andet -> Git -> Git Repositories:

3.2. Oprettelse af et nyt lager

Vi er nødt til at oprette et projekt og højreklikke på det for at vælge Team -> Del projekt, og Skab.

Herfra vælger vi arkivmappen og klikker Afslut:

3.3. Kloning af et arkiv

Vi kan klone et lager fra en ekstern git-server til vores lokale filsystem.

Lad os gå til File -> Import ... -> Git -> Projects from Git -> Next -> Clone URI -> Next, derefterfølgende vindue vises:

Vi kan også åbne det samme vindue fra Klon Remote Repository værktøjslinjeknap i Opbevaringssteder visningsfane.

Git understøtter flere protokoller såsom https, ssh, git osv. Hvis vi indsætter URI'et i det eksterne lager, udfyldes andre poster automatisk.

4. Filialer

Der er to typer grene, vi vil beskæftige os med:

  • Lokal afdeling
  • Fjernsporingsfilial

4.1. Oprettelse af lokal filial

Vi kan oprette en ny lokal filial ved at klikke på Team -> Repository -> Skift til -> Ny gren:

Vi kan vælge den eksterne sporingsgren, hvorfra vi baserer vores lokale filial. Tilføjelse af upstream-konfiguration til vores nye lokale filialer forenkler synkronisering af de lokale ændringer med de eksterne.

Det anbefales at kontrollere indstillingen i dialogen Konfigurer opstrøms til push and pull.

En anden metode til at åbne den nye grendialog ved at højreklikke på grene i Visning af arkiver -> Skift til -> Ny gren

4.2. Tjek filialen

Fra Opbevaringssteder visning, højreklik på grenens navn og klik Tjek ud:

Eller højreklik på projektet, og vælg Team -> Skift til -> vælg grenens navn:

5. Sporing af filer med Git

5.1. Sporing af ændringer

Spørgsmålstegn vises på filer, der endnu ikke er under Gits kontrol. Vi kan spore disse nye filer ved at højreklikke på dem og vælge Team -> Tilføj til indeks.

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

5.2. Forpligtelse til ændringer

Vi ønsker at forpligte ændringer til sporede filer. Dette gøres ved at højreklikke på disse filer og vælge Team -> Forpligtelse:

Som standard tages forfatteren og kommitteren fra .gitconfig fil i vores hjemmekatalog.

Vi kan indtaste en forpligtelsesbesked for at forklare ændringerne. Derudover ved at klikke på Tilføj underskrevet af ikon i øverste højre hjørne, kan vi tilføje et Sign-off-by tag.

5.3. Inspicere historie

Vi kan kontrollere historikken for en fil ved at højreklikke på den og vælge Team -> Vis i historik.

En historikdialog viser alle de forpligtede ændringer i den inspicerede fil:

Vi kan åbne de sidst forpligtede ændringer i sammenligningsvisningen ved at klikke på ikonet for sammenligningstilstand i øverste højre hjørne i fanen historie og derefter dobbeltklikke på filnavnet (her er et eksempel: HelloEgit / src / HelloEgitClass.java) i fillisten:

5.4. Skubbe ændringer til Remote Repository

For at skubbe vores ændringer skal vi have et eksternt Git-arkiv.

Fra Team -> Remote -> Push vi kan indtaste https-URL'en til det nye Git-fjernlager i en guide:

Næste trin er at:

  • Vælg Tilføj alle grene spec for at kortlægge lokale filialnavne til de samme grennavne i destinationslageret
  • Tryk på bekræftelsesknappen - guiden viser en forhåndsvisning af ændrede filer
  • Endelig klikker vi Afslut for at skubbe vores lager til den fjerne placering.

Hvis vi har konfigureret Upstream Configuration fra afsnit 4.1, vil denne konfigurationsdialog ikke blive vist, og push'en bliver meget lettere.

5.5. Henter fra opstrøms

Hvis vi arbejder med en lokal filial, der er baseret på en ekstern sporingsfilial, kan vi nu hente ændringer fra opstrøms.

For at hente fra opstrøms højreklikker vi på projekt og vælg Team -> Hent fra Upstream (eller ved at højreklikke på lageret på Visning af arkiver og vælge Hent fra Upstream).

Denne hentning kan konfigureres ved at højreklikke på projektet og vælge Team -> Fjernbetjening -> Konfigurer hentning fra opstrøms:

5.6. Sammenligning og synkronisering

Hvis vi vil se ændringerne mellem den lokale arbejdsmappe og en forpligtet ændring, kan vi højreklikke på ressourcen og vælge Sammenlign med. Dette åbner Synkroniser visning for at give os mulighed for at gennemse ændringerne:

Ved at dobbeltklikke på den ændrede fil åbnes sammenligningseditoren, så vi kan sammenligne ændringerne.

Hvis vi vil sammenligne to forpligtelser, skal vi vælge Team -> Vis i historik.

Fra historikvisningen fremhæver vi de to forpligtelser, som vi vil sammenligne, og vælg den Sammenlign med hinanden mulighed:

Hvis vi vil sammenligne mellem arbejdsmappen og en gren, kan vi bruge Team -> Synkroniser

5.7. Fletning

Fletning inkorporerer ændringer fra en gren eller tag i den aktuelt tjekkede gren.

Vi kan fusionere ved at klikke Team -> Flet eller ved at højreklikke på lagernavnet i arkivvisningen og vælge Fusionere:

Nu kan vi vælge den gren eller det mærke, som vi vil flette med den gren, der aktuelt er tjekket ud.

6. Konklusion

I denne vejledning introducerede vi EGit-pluginet til formørkelse, hvordan man installerer og konfigurerer det, og hvordan man bruger det i vores daglige udvikling.

For flere detaljer om EGit, se dens officielle dokumentation her.