Een lokaal repository gebruiken

Bekijk de videolessen

In dit scenario verstuurt u de wijzigingen vanuit uw lokale repository naar Plesk, waarna Plesk de wijzigingen doorvoert in uw website.

In dit hoofdstuk :

Een Git-repository aanmaken

Een push uitvoeren en bestanden publiceren

Branch of zoekpad wijzigen

Selecteer een publicatiemodus

Aanvullende acties bij publicatie inschakelen

Commit-logs bekijken

die te publiceren Een repository verwijderen of de naam ervan wijzigen

 

Een Git-repository aanmaken

Om een nieuw Git-repository voor uw domein aan te maken gaat u naar Websites & domeinen > Git. Als u al Git-repositories voor uw domein hebt aangemaakt via Plesk, dan klikt u op de knop Repository toevoegen. U ziet nu het scherm waarop u een nieuw repository kunt aanmaken:

Git_local_create

Eerst moet u selecteren waar uw code wordt opgeslagen. In dit scenario selecteert u Lokale opslag op uw werkstation.

Git-repository in Plesk. Geef de naam van de repository op. Standaard wordt de naam van het domein gebruikt met het achtervoegsel .git.

In de sectie Uw website geeft u het volgende op:

  • De publicatiemodus. Standaard wordt Automatisch publiceren gebruikt. Dit betekent dat alle wijzigingen die naar de Git-repository worden gepusht automatisch worden gepubliceerd op de productie-site. Als u de publicatiemodus wilt wijzigen, klik dan op de link automatisch gepubliceerd en selecteer een andere optie in het geopende venster Publicatiemodus. Als Handmatig publiceren is geselecteerd dan moet u bestanden handmatig vanuit de Git-repository publiceren naar uw hostingaccount. Als Geen publicatie is geselecteerd dan zullen de bestanden niet worden gepubliceerd op de productiesite (deze optie kan bijvoorbeeld nuttig zijn voor het opslaan en uitwisselen van code).

    Git_push_Deployment_mode

  • Een doelmap voor het publiceren van Git-bestanden op uw website. Standaard wordt /httpdocs gebruikt. U kunt dit wijzigen naar een andere reeds bestaande map door te klikken op de naam van de map.

    Git_push_Deployment_path

Klik op OK. De nieuwe repository zal worden aangemaakt en weergegeven op de pagina Git.

Git_local_created

Welke URL voor de repository zal worden weergegeven hangt af van het protocol voor gegevensoverdracht dat u gebruikt. U kunt een van de volgende protocollen gebruiken:

  1. SSH (alleen Linux) - dit protocol wordt standaard gebruikt als SSH-toegang tot webhosting voor het domein is ingeschakeld. Om SSH-toegang tot een domein in te stellen gaat u naar Websites & domeinen > Toegang tot webhosting en in het menu Toegang tot de server via SSH selecteert u /bin/bash of /bin/sh. In dit geval verschijnt de URL van de repository als user1@voorbeeld.nl:~/repos/voorbeeld.git.
  2. HTTPS - Dit protocol wordt standaard gebruikt als SSH-webtoegang niet is toegestaan en SSL/TLS voor een domein is ingesteld (Hostinginstellingen >SSL/TLS-ondersteuning). In dit geval verschijnt de URL als https://user1@voorbeeld.nl/plesk-git/voorbeeld.git.
  3. HTTP - Dit protocol wordt standaard gebruikt als SSH-webtoegang niet is toegestaan en SSL/TLS niet voor een domein is ingesteld. In dit geval zal de URL van een repository eruit zien als http://user1@voorbeeld.nl/plesk-git/voorbeeld.git.

Volg de instructies die beschikbaar zijn via de link Help om de lokale repository te initialiseren.

Git_How_To

Als de repository is geïnitialiseerd kunt u de commit-informatie zien en de naam van de actieve branch op Websites & domeinen > Git. Standaard wordt de branch master gebruikt om met Plesk te werken. U kunt later meer branches toevoegen (zie de sectie Branch of zoekpad wijzigen).

Git _init_commit

U kunt nu een commit van uw websitebestanden uitvoeren vanuit uw lokale repository en daarna een push naar de repository op de server.

 

Een push uitvoeren en bestanden publiceren

Als u een commit uitvoert van de bestanden van uw website vanuit de lokale repository en vervolgens een push naar de repository op de server, dan kunt u de commit-informatie zien op Websites & domeinen > Git.

Git_local_commit

Plesk gebruikt standaard de modus Automatisch publiceren. Dit betekent dat nadat er een push is uitgevoerd naar de repository de bestanden automatisch worden gepubliceerd (indien nodig kunt u deze modus uitschakelen, zie de sectie Publicatiemodus selecteren ).

Als u bijvoorbeeld een commit and push naar de Git-repository uitvoert voor een bestand index.html met de tekst “Hello! Welkom op mijn website”, dan kunt u direct naar de website gaan en de wijzigingen zien.

Git_website

 

Branch of zoekpad wijzigen

Publiceren vanuit een nieuwe branch

Het is een goed gebruik om binnen een repository te werken met verschillende branches. Er kan slechts een branch tegelijk actief zijn. Standaard wordt de branch Master gebruikt voor publicatie.

Om een nieuwe branch toe te voegen moet u deze in uw lokale repository aanmaken. U kunt bijvoorbeeld een nieuwe branch met de naam dev aanmaken met de volgende opdrachten:

git branch dev

git checkout dev

Voer vervolgens een commit van de bestanden uit naar deze branch en een push naar de repository op de server. Dit doet u met de volgende opdrachten:

git commit –m "wijziging in de branch"

git push –u origin dev

U kunt nu een van de twee actieve branches selecteren. Ga naar Websites & domeinen > Git en klik op de link Wijzig branch en zoekpad voor de naam van de repository. Selecteer in het venster dat wordt geopend de naam van de branch in het menu Branch.

Git_push_change_branche

Als u een nieuwe branch selecteert en klikt op OK dan zal Plesk de nieuwe actieve branch weergeven.

Git_local_branch

Het zoekpad voor publicatie wijzigen

Standaard wordt de map /httpdocs gebruikt voor het publiceren van Git-bestanden op uw website. Als u het zoekpad voor publicatie wilt wijzigen klikt u op de link Branch en zoekpad wijzigen en u selecteert in het venster dat wordt geopend de nieuwe map. U kunt ook een nieuwe map aanmaken door te klikken op de knop Nieuwe map aanmaken.

Git_push_change_folder

 

Selecteer een publicatiemodus

Om een publicatiemodus voor uw repository te selecteren klikt u op Repository-instellingen en u selecteert een van de opties onder Publicatiemodus selecteren:

  • Automatisch publiceren. Plesk zal direct alle wijzigen op de productiesite publiceren zodra er een push naar de Plesk-repository wordt uitgevoerd.
  • Handmatige publicatie. U moet bestanden handmatig publiceren door te klikken op de knop Publiceren vanuit repository onder Websites & domeinen > Git. U kunt bestanden ook handmatig publiceren door te klikken op de knop Publiceren naast de naam van de repository op de pagina Websites & domeinen.
  • Geen publicatie (repository-hosting). Bestanden zullen niet worden geïntegreerd in de productiesite. U kunt deze optie bijvoorbeeld gebruiken als u de Git-repository slechts wilt gebruiken voor het opslaan van code.

    Git_local_select_deploy_mode

 

Aanvullende acties bij publicatie inschakelen

In de meeste gevallen is het publiceren van bestanden niet voldoende om een website te publiceren. Als u bijvoorbeeld een framework zoals Ruby on Rails gebruikt, dan is het wellicht nodig om een datamigratie uit te voeren na publicatie, met een opdracht zoals dit: bin/rails db:migrate.

Plesk geeft u de mogelijkheid om een aantal aanvullende acties in te stellen die zullen worden uitgevoerd steeds wanneer er bestanden op de website zijn gepubliceerd.

Ga naar Websites & domeinen > Git, klik op Repository-instellingen, selecteer Aanvullende publicatie-acties inschakelen en geef een of meer shell-opdrachten op die worden uitgevoerd steeds wanneer deze repository wordt gepubliceerd. Elke opdracht moet starten op een nieuwe regel.

Git_local_actions

Opmerking: Als een gebruiker in Linux geen SSH mag gebruiken, dan worden alle opgegeven opdrachten uitgevoerd in een chrooted omgeving. De hoofdmap van de systeemgebruik van een abonnement wordt gebruikt als hoofdmap van het bestandsysteem voor dat abonnement; er kunnen geen uitvoerbare bestanden buiten de chroot-jail worden uitgevoerd. Als het zoekpad naar u site bijvoorbeeld /var/www/vhosts/voorbeeld.nl/httpdocs is, dan zal het zoekpad in een chrooted-omgeving ./httpdocs zijn. Dit maakt dat u geen opdrachten kunt uitvoeren op een niveau hoger dan één niveau boven de map /httpdocs.

 

Commit-logs bekijken

Om de gehele commit-geschiedenis voor de huidige branch te bekijken gaat u naar Websites & domeinen > Git en u klikt op de link Commit-logbestanden. Voor elke commit wordt de volgende informatie weergegeven: tijd, uniek identificatiekenmerk, gebruikersnaam en het commit-bericht. Klik op Vernieuwen voor een update van het commit-logbestand.

Got_Commit Logs

U kunt de commit-logbestanden filteren op elke parameter. U kunt bijvoorbeeld alle commits vinden die door een specifieke gebruiker zijn uitgevoerd, beginnend op een specifieke datum. Klik op de knop Git_Commit_Logs_search_Buttom, geef de zoekparameters op en klik op Zoeken.

Git_Commit Logs_filter

 

die te publiceren Een repository verwijderen of de naam ervan wijzigen

U kunt de naam van uw repository op elk moment wijzigen. Als u bijvoorbeeld klaar bent met het ontwikkelen van uw website, dan wilt u wellicht de naam van de repository wijzigen van website-dev naar website, om zo verwarring te voorkomen. Ga naar Websites & domeinen > Git, klik op Repository-instellingen en geef een nieuwe naam op in het veld Naam van repository.

Merk op dat als u de naam van de repository hebt gewijzigd, u uw lokale repository moet instellen om van de nieuwe URL van de repository te gebruiken. Dit doet u met de opdracht:

git remote set-url origin [nieuwe URL]

Als u bijvoorbeeld de naam van de repository wijzigt van voorbeeld naar voorbeeld1, dan geeft u de volgende opdracht op:

git remote set-url origin user1@voorbeeld.nl :~/repos/voorbeeld1.git

Als u de repository wilt verwijderen, klik dan op de link Repository verwijderen onder Websites & domeinen > Git. In dit geval zal Plesk alleen de repository verwijderen; de map met de gepubliceerde bestanden zal blijven zoals deze is.

 

Leave your feedback on this topic here

If you have questions or need support, please visit the Plesk forum or contact your hosting provider.
The comments below are for feedback on the documentation only. No timely answers or help will be provided.