Aan de slag met GIT op Linux

Git is een gedistribueerd versiebeheersysteem. Het wordt gebruikt om veranderingen in willekeurige bestanden bij te houden. Het werd ontworpen voor het coördineren van het werk tussen programmeurs die broncode bewerken tijdens het software ontwikkelingsproces. In dit artikel laat ik je de commando’s zien om basisbewerkingen op een Git repository uit te voeren. We zullen de Ubuntu server als OS gebruiken. Dezelfde commando’s kunnen op elk van de besturingssystemen werken en alleen het installatie-gedeelte zal anders zijn.

Vereisten

  1. Ubuntu 20.04

Wat zullen we doen?

  1. Initialiseer een lokale repository en voer er basisbewerkingen op uit.
  2. Kloon een bestaande repository en voer er basisbewerkingen op uit.

Initialiseer een lokaal repository en voer er basisbewerkingen op uit.

Controleer voor je verder gaat welk besturingssysteem je gebruikt en of Git daarop beschikbaar is.

Ik heb het al geïnstalleerd op mijn Ubuntu 20 0.4 LTS server.

cat /etc/issue
git --version

OS en Git versie

Gebruik je hetzelfde besturingssysteem als het mijne, dan kun je het installeren met het volgende commando als je het nog niet op je server hebt.

sudo apt-get install git

Laten we nu aan de slag gaan met de basisbewerkingen in Git.

Controleer de huidige directory en maak er een nieuwe directory in. Verander je werkdirectory in de directory die je maakte.

pwd
mkdir my-first-git-repo
cd my-first-git-repo/
ls -la

Maak een lokale map

Tot nu toe hebben we gewoon een directory waar geen bestanden in staan en die in het Linux systeem een eenvoudige directory is. Gebruik is het volgende commando om de eenvoudige directory om te zetten in een Git repository.

git init
ls -la

Nu zie je dat een nieuwe verborgen map is aangemaakt met Git configuraties erin.

cat .git/config

Een archief in een bestaande map initialiseren

Bij het initialiseren van een Git repository bevat hij niet de gebruikersidentiteit. Om een gebruikersnaam en e-mail ID als gebruikersidentiteit in te stellen gebruik je de volgende commando’s. Deze identiteit wordt in de Git logberichten bijgevoegd.

git config --list
git config user.name rahul
git config user.email [email protected]
git config --list

Als je de gebruikersidentiteit hebt ingesteld en en de config opsomt, kun je zien dat de gebruikersnaam en e-mail ingesteld zijn.

Controleer en stel je Identiteit in voor de huidige repository

Je kunt zelfs de gebruikersnaam en e-mail ID die als gebruikersidentiteit is ingesteld controleren met de volgende commando’s.

git config user.name
git config user.email

Controleer de identiteit voor de lokale of huidige repository

De bovenstaande commando’s stellen gebruikersidentiteit in die beperkt is tot een bepaald repository.

Je kunt zelfs een gebruikersidentiteit instellen die door alle repositories op je machine gebruikt zal worden en die bekend staat als globale identiteit. Als je de globale identiteit instelt, zullen de repositories die geen lokale identiteit hebben deze globale identiteit gebruiken bij het vastleggen van de berichten.

Als de globale identiteit niet ingesteld is en je probeert de gebruikersnaam en e-mail op te sommen krijg je geen informatie.

git config --global user.name
git config --global user.email

Maar als je de gebruikersnaam en e-mail ID instelt en daarna de identiteit controleert, zie je dat die wordt weergegeven.

git config --global user.name rahul
git config --global user.email [email protected]
git config --global user.name
git config --global user.email

Iedereen en staat de globale identiteit met de volgende commando’s.

git config --global --unset user.name
git config --global --unset user.email
git config --global user.name
git config --global user.email

Bekijk de volgende schermafbeelding ter referentie

Controleer en stel de globale identiteit in

Nu weet je dat je je lokale identiteit kunt controleren met de commando’s, maar je kunt zelfs controleren wat ingesteld is door het .git/config bestand te lezen.

git config user.name
git config user.email

Als je de inhoud van .git/config bestand leest, zul je zien dat de gebruikersnaam en e-mail in dit bestand zijn ingesteld. En dit is van waaruit de lokale identiteit gebruikt wordt. Je kunt de identiteit zelfs veranderen door hetzelfde bestand te bewerken.

vim .git/config
cat .git/config
git config user.name
git config user.email

Stel de identiteit van het huidige archief in met behulp van het configuratiebestand

Als je de commit identiteit voor je lokale repository hebt ingesteld, is de volgende stap een bestand te maken en het aan het repository toe te voegen.

Laten we een leeg bestand in het lokale archief aanmaken.

 touch README.md

Als je na het toevoegen van het bestand de status van het repository bekijkt, zul je zien dat het bestand nu ongetraceerd is door Git.

 git status
 git branch

Voordat je je bestand aan Git commit moet je het eerst toevoegen. Gebruik het volgende commando om je bestand aan Git toe te voegen, zodat het klaar is voor de commit.

 git add README.md
 git status
 git log

Tijdens het committen van een bestand aan de Git repository moet je er een boodschap aan toevoegen.

 git commit -m "my first commit - added README.md"

Bij controle van de logs zul je nu zien dat het bestand gecommit is met de boodschap die we in de commit vermeldden.

git log

Standaard worden je commits aan de master branch toegevoegd.

git branch

Voeg een bestand toe en creëer je eerste commit

Kloon een bestaande repository en voer er basisbewerkingen op uit

Tot nu toe werkten we met een repository op ons lokale systeem.

Nu zullen we zien hoe we een paar operaties op een bestaande repository kunnen uitvoeren. Als je nog geen bestaande repository hebt op een code hosting platform, zoals Github, voor versiebeheer en samenwerking, maak dan eerst een account aan op Github om een repository te maken.

Je kunt hier een account op Github aanmaken.

Zodra je een account op Github hebt aangemaakt is het tijd om een nieuwe repository aan te maken. Om een repository aan te maken klik je op het “+” icoon rechts bovenaan het scherm en klik op de optie “New repository”.

Maak een repository op Github

Geef de aan te maken repository een naam en stel het toegangsniveau in als privé of openbaar, afhankelijk van wat je nodig hebt.Je kunt zelfs een readme bestand toevoegen bij het aanmaken van de repository. Klik op de knop “Create repository” om een archief aan te maken met de door jou opgegeven configuratie.

Repository configuratie

Als je een repository gemaakt hebt is de volgende stap om het op je lokale systeem te klonen. Om zijn URL te krijgen klik je op “Code” en kopieer je de URL uit de HTTPS sectie.

Commando om de repo te klonen

Ga terug naar je systeem en verander je werkdirectory

pwd
cd ..
pwd

Kloon de repository op je lokale machine met het volgende commando, Je moet je Git URL opgeven.

git clone <your-repository-URL>
cd test-repo/
ls -lt

Het bovenstaande commando kloont je repository van Github naar je lokale machine en als je nu het Git log bekijkt zie je één logmelding met de initiële commit waaraan ik een README.md bestand toevoegde.

git log

Kloon de bestaande repository

Laten we nu een nieuw bestand maken, het aan Git toevoegen en het committen met een boodschap.

pwd
touch first-file-to-push
git status
git add first-file-to-push
git status
git commit -m "first commit to push to the remote repository"

Bij het committen wordt je gevraagd je gebruikersidentiteit in te stellen

git config --list
git config user.name rahul
git config user.email [email protected]
git config --list
git log

Nadat je je gebruikersidentiteit ingesteld hebt, kun je de identiteit repareren in de commit die we deden.

Voeg het bestand toe en leg het vast

Om de identiteit te repareren voer je het volgende commando uit. Je krijgt een editor en daar kun je de commit desgewenst veranderen.

  git commit --amend --reset-author

Bij controle van het Git log zul je zien dat het log de identiteit heeft die je instelde en de commit die je repareerde.

git log
  git status

Je bent helemaal klaar om je lokale veranderingen naar het remote repository te pushen. Met het volgende commando push je wijzigingen naar Github in je repository.

  git push

Push het bestand naar de repo

Je kunt nu je wijzigingen in het remote repository terugvinden. Ga naar het repository en je kunt de commit vinden en het bestand dat je toevoegde.

Controleer het naar de repo geplaatste bestand

Soms moet je bepaalde bestanden uitsluiten van toevoeging aan het repository.

pwd
ls -la

Je kunt een .gitignore bestand maken en het patroon van bestanden toevoegen dat Git moet negeren.

touch .gitignore
vim .gitignore

Hier heb ik toegevoegd “*.txt” dat alle bestanden eindigend op “.txt” zal negeren.

cat .gitignore

Nadat je een patroon aan het .gitignore bestand hebt toegevoegd en een bestand van dat patroon in het archief hebt gemaakt, zal het bestand door Git genegeerd worden.

Omdat we *.txt hebben toegevoegd en nu als we proberen een bestand te maken dat eindigt op .txt, zal het door Git genegeerd worden bij de “git add” bewerking.

touch ignore-this-file.txt
git status

De bestanden die niet met het patroon overeenkomen worden door Git niet genegeerd

touch dont-ignore-this-file.doc
git status

Je kunt dan alle bestanden in het archief toevoegen en ze met een boodschap committen. Je zult merken dat de genegeerde bestanden niet toegevoegd worden.

git add .
git status
git commit -m "added .gitignore and a sample doc file"
git status

Zodra de bestanden zijn toegevoegd en met een boodschap gecommit zijn, zijn ze klaar om naar het remote archief gepushed te worden.

git push

Git negeren

Als je ooit zin hebt om je bestanden uit het archief te verwijderen, kun je het “git rm” commando gebruiken.

pwd
ls -lt
git status
git rm dont-ignore-this-file.doc
git status
ls -la

Na het verwijderen van het bestand kun je dan je wijzigingen commiteren en naar het repository pushen.

git commit -m "git removed dont-ignore-this-file.doc "
git status
git push

Git verwijder bestand

Conclusie

In dit artikel maakten we een directory aan op het lokale systeem en initialiseerden die als een Git repository. We voerden basisbewerkingen uit als git add, git commit op deze repository. We maakten ook een repository op Github en kloonden die op de lokale server en voerden basisbewerkingen uit als git add, git commit, git push, git rm. We zagen ook dat Git bestanden met een bepaald patroon kan negeren.