ID.nl logo
GitHub-branches maken: zo werkt de staging area
© PXimport
Huis

GitHub-branches maken: zo werkt de staging area

Bij het werken met Git moet je vooral wennen aan de zogeheten staging area, een soort tijdelijke opslag. Het is een krachtig hulpmiddel, maar ook lastig te doorgronden als je net begint. In deze workshop geven we tips hoe je dit optimaal benut. Wil je GitHub-branches maken, dan geven wij hier ook wat tips voor.

Bij Git zet je wijzigingen eerst in een zogeheten staging area, een soort tijdelijke opslag, voordat je met een zogenoemde commit de wijzigingen naar je repository overzet. Je kunt hier gemakkelijk in verdwalen. In deze workshop geven we belangrijke tips om het werken op de verschillende niveaus van Git wat comfortabeler te maken!

Overzicht niveaus

Bij het werken met Git is het handig om de onderstaande afbeelding met het overzicht als een soort cheatsheet te gebruiken. Het geeft de verschillende niveaus weer, te weten: je werkdirectory met je programmabestanden, de staging area van Git met tussentijdse wijzigingen, je lokale repository op het systeem en eventueel nog een remote repository zoals GitHub. Je ziet ook de belangrijkste opdrachten die je tussen die niveaus kunt geven. Zo zie je git add waarmee je een bepaald bestand naar de staging area kunt zetten. Met de vlag -u in git add -u hoef je geen bestandsnaam op te geven, maar worden in één handeling de wijzigingen in gevolgde bestanden naar de staging area gezet. En je ziet de opdracht git commit waarmee je wijzigingen doorzet van de staging area naar de lokale repository, waarna de staging area weer leeg is en je aan de volgende veranderingen kunt gaan werken.

©PXimport

Werken zonder staging area

Eventueel kun je zonder staging area werken als je die niet nodig denkt te hebben. Het werkt dan meer in lijn met Subversion (svn), een bekend alternatief voor Git. Je kunt namelijk, zoals je ook in het overzicht ziet, met één opdracht de beide opdrachten git add en git commit combineren in één opdracht waarmee je dus de staging area overslaat:

git commit -a

Je kunt hierbij ook een beschrijving toevoegen met:

git commit -am "Beschrijving van de aanpassing"

Het lukt overigens alleen voor bestanden die je al volgt, dus waar je eerder de opdracht git add hebt gegeven. Een enkele keer is dit handig, maar meestal zul je de staging area willen gebruiken.

©PXimport

Veranderingen bekijken

Tijdens het werken met Git komt de opdracht git status van pas, waarmee je kunt zien welke bestanden zijn veranderd in je werkdirectory ten opzichte van de staging area. Wil je precies zien welke veranderingen dat zijn, dan gebruik je git diff, eventueel gevolgd door de bestandsnaam. Een rode regel met minteken ervoor geeft aan dat die regel is verwijderd. Daaronder zie je dan in het groen de nieuwe regel met een plusteken ervoor. Wil je zien welke veranderingen je in de staging area hebt klaargezet, dan geef je de opdracht (eventueel gevolgd door een bestandsnaam):

git diff --staged

Wijzigingen ongedaan maken

Stel dat je een wijziging hebt gedaan aan bepaalde programmacode in de werkdirectory, maar je bent hier niet tevreden mee? Als voorbeeld hebben we enkele regels toegevoegd die de huidige datum en tijd op het scherm te tonen. Je ziet welke veranderingen er zijn ten opzichte van de versie in de staging area met de opdracht:

git diff demo.go

Deze opdracht laat in de output weer de toegevoegde regels in het groen zien en de verwijderde regels in het rood. Zoals je ook in het overzicht hierboven kunt zien, kun je de versie uit de staging area terugzetten met:

git checkout demo.go

De veranderingen zijn nu ongedaan gemaakt. Je kunt ook eerdere commits terugzetten (zie volgende twee paragrafen).

Eerdere commits

Om terug te gaan naar een van de eerdere commits, is het handig eerst een lijst met eerdere commits op te vragen. Daarna kun je eventueel vergelijkingen maken. Als voorbeeld hebben we de datum/tijdmelding weer toegevoegd aan de programmacode, eerst in het rfc850-formaat en daarna in het rfc3339-formaat. Beide veranderingen hebben we gecommit. Met git log kun je een lijst met alle historische commits opvragen. Dit kan eventueel in één regel per commit met:

git log --oneline

Je ziet hierbij dat een zogenoemde hash aan elke commit is toegekend als referentie en het eerste unieke gedeelte van die hash gaan we gebruiken. De laatste commit is altijd bekend onder de naam HEAD. Je kunt vergelijkingen maken tussen commits. Benoem dan de twee commits die je wil vergelijken door ofwel HEAD of de hash in te vullen, bijvoorbeeld:

git diff HEAD b9eebfe

©PXimport

Commit terugzetten

Om een commit terug te zetten, heb je meerdere opties. Zo kun je een reset-opdracht geven waar je dan (een deel van) de hash achter zet, bijvoorbeeld:

git reset --hard b9eebfe

Na deze opdracht bestaan de latere commits in feite niet meer, alsof ze nooit hebben plaatsgevonden. Ook ben je alle niet-toegevoegde veranderingen in je werkdirectory kwijt! Je kunt als veiliger alternatief een checkout-opdracht gebruiken met daarachter ofwel HEAD voor de laatste commit ofwel de hash voor een specifieke commit, bijvoorbeeld:

git checkout HEAD

Hierbij worden de bestanden in je werkdirectory aangepast naar de bewuste commit. Om eventueel weer terug naar de eerdere hoofdtak gebruik je:

git checkout master

Vertakkingen

De checkout die we hierboven noemden, kom je vooral tegen bij het werken met vertakkingen ofwel branches. Stel dat je de commit met hash b9eebfe de naam rfc850-branch wil geven, dan geef je de opdracht:

git checkout -b rfc850-branch b9eebfe

Hiermee wordt dankzij de optie -b automatisch de nieuwe branch rfc850-branch aangemaakt en wordt vervolgens de werkdirectory aangepast naar de bewuste commit met de hash b9eebfe. Je werkt dan in deze vertakking, waar je uiteraard ook weer commits kunt gaan maken. Zoals eerder gezegd, kun je eventueel weer terug naar de master, in feite de hoofdtak, met:

git checkout master

Om in het vervolg direct naar de vertakking rfc850-branch te gaan, gebruik je:

git checkout rfc850-branch

Zulke vertakkingen zul je vooral gebruiken om functies apart van de master uit te werken die je later eventueel weer toevoegt aan die master, ook wel ‘merge’ genoemd.

©PXimport

▼ Volgende artikel
Waar voor je geld: 5 grote 65 inch 4K smart-tv's voor minder dan 600 euro
© jon anders wiken
Huis

Waar voor je geld: 5 grote 65 inch 4K smart-tv's voor minder dan 600 euro

Bij ID.nl zijn we gek op producten waar je niet de hoofdprijs voor betaalt. Een paar keer per week speuren we daarom binnen een bepaald thema naar zulke deals. Waar je een paar jaar geleden nog de hoofdprijs betaalde voor een goede 65 inch smart-tv, zijn deze tv's nu al een stuk betaalbaarder. Wij vonden vijf exemplaren die voor minder dan 600 euro te koop zijn.

Een 65 inch 4K smart-tv is natuurlijk de ultieme televisie voor het kijken van series en films in de hoogste kwaliteit. Voordeel is verder ook dat je niet al te dicht op je scherm hoeft te zitten: voor een 65 inch televisie geldt een afstand vanaf zo'n drie tot drieënhalve meter. En dankzij de smart-functionaliteit heb je toegang tot tal van streamingdiensten. Wij bekeken de mooiste modellen die je voor minder dan 600 euro kunt kopen.

LG 65UR73006LA

Voor wie houdt van heldere beelden en natuurlijke kleuren is de LG 65UR73006LA.AEUQ een prima keuze. Het 4K-paneel met ondersteuning voor HDR10 en HLG laat films en series mooi uitkomen. Wat direct opvalt is het brede kijkhoekpaneel, zodat je vanuit elke hoek goed beeld hebt. Drie HDMI 2.1-poorten zijn aanwezig, handig voor bijvoorbeeld een spelcomputer of soundbar. Het geluid is degelijk, met 20 watt RMS, al kan een extra speaker geen kwaad. De televisie zelf is niet overdreven dik, ongeveer 57 mm, en draait op WebOS dat vlot en makkelijk werkt.

Besturingssysteem: WebOS
Aantal HDMI-poorten
: 3
Audio-output (RMS)
: 20W

TCL 65C655 Pro

Deze TCL 65C655 Pro is een goede keus als je graag series kijkt of een filmavond houdt. Dankzij de QLED-techniek komen de kleuren mooi tot leven en ook HDR10+ en Dolby Vision helpen mee voor extra diepte. Google TV zorgt ervoor dat je toegang hebt tot de meeste (streaming-)apps van Netflix tot YouTube. Het geluid springt eruit: met 50 watt RMS en een ingebouwde subwoofer krijg je een stevig geluid. De tv zelf is daardoor wel een tikje dikker, zo’n 80 mm. Er zijn drie HDMI-poorten voor het aansluiten van extra apparaten.

Besturingssysteem: Google TV
Aantal HDMI-poorten
: 3
Audio-output (RMS)
: 50W

Hisense 65A7NQ

Ben je iemand die vooral van gemak houdt? De Hisense 65A7NQ biedt precies dat. De tv is simpel in gebruik, draait op het VIDAA-besturingssysteem en start razendsnel op. Met zijn 4K-beeld en ondersteuning voor Dolby Vision zie je mooie kleuren en scherpe beelden. Er zijn drie HDMI-poorten, voldoende voor al je apparaten. De tv heeft een redelijk slank ontwerp, ongeveer 80 mm dik. Het geluid van 20 watt RMS is prima voor dagelijks gebruik, al klinkt het met een soundbar net even beter.

Besturingssysteem: VIDAA U
Aantal HDMI-poorten
: 3
Audio-output (RMS)
: 20W

Samsung QE65Q80DAT

Wat deze Samsung QE65Q80DAT meteen bijzonder maakt, is het strakke ontwerp en de Direct Full Array-achtergrondverlichting. Daardoor zijn de zwarttinten diep en het contrast sterk. De tv is heel geschikt voor wie sportwedstrijden of actiefilms kijkt. Hij heeft vier HDMI 2.1-poorten en een krachtig geluid van 40 watt RMS, wat zorgt voor een volle klank bij films. Het scherm is vrij dun, met 54 mm, en draait op het vertrouwde Tizen-besturingssysteem dat soepel werkt.

Besturingssysteem: Tizen
Aantal HDMI-poorten
: 4
Audio-output (RMS)
: 40W

Philips 65PUS7609/12

Bij de Philips 65PUS7609/12 draait het om eenvoud en betaalbaarheid. De beeldkwaliteit is prima voor dagelijks gebruik, met 4K-resolutie en ondersteuning voor Dolby Atmos voor beter geluid. De tv werkt met Titan OS, dat simpel is en vlot laadt. Er zijn drie HDMI 2.1-poorten, genoeg om bijvoorbeeld een spelcomputer of extra box aan te sluiten. De tv is iets dikker dan sommige andere modellen, ongeveer 92 mm, en levert 20 watt RMS geluid. Philips is voor deze serie afgestapt van Google TV en levert de modellen nu met Titan OS.

Besturingssysteem: Titan OS
Aantal HDMI-poorten
: 3
Audio-output (RMS)
: 20W

▼ Volgende artikel
Brug te laag? Bocht te krap? Met campernavigatie verloopt je reis wél probleemloos
© ID.nl
Mobiliteit

Brug te laag? Bocht te krap? Met campernavigatie verloopt je reis wél probleemloos

Ga je op vakantie met je camper of met de caravan? Dan wil je vooral ontspannen rijden, zonder zorgen over te lage viaducten, smalle haarspeldbochten of weggetjes waar je amper kunt keren. Toch gebruiken veel mensen nog steeds een standaard autonavigatie, terwijl die niet is afgestemd op de afmetingen en het rijgedrag van een groter of zwaarder voertuig. In dit artikel lees je wat campernavigatie anders doet – en waarom dat handig is.

📍 Wat het verschil is tussen gewone navigatie en campernavigatie 📍 Waarom standaard navigatie niet altijd geschikt is voor campers of caravans 📍 Welke problemen speciale campernavigatie voorkomt 📍 Welke extra functies campernavigatie biedt 📍 Wanneer campernavigatie echt nodig is 📍 Waar je op moet letten als je campernavigatie wilt kopen 📍 Waarom een groter scherm handig is in een camper

Lees ook: Een airco in je caravan of camper? Dit zijn de mogelijkheden!

Een gewone navigatie – los toestel of via smartphone – is gebouwd voor personenauto's. Je voert een bestemming in, kiest eventueel tussen snelste of kortste route, en krijgt aanwijzingen gebaseerd op normale verkeersregels en gangbare voertuigafmetingen. Voor dagelijks gebruik werkt dat prima. Maar zodra je met een grote camper of een caravan op pad gaat, kom je al snel beperkingen tegen. Denk aan tunnels met een beperkte doorrijhoogte, wegen met maximale asdruk of gewichtslimiet, scherpe bochten in bergachtig gebied of dorpskernen waar je amper kunt keren of parkeren. Een standaard navigatie houdt daar geen rekening mee. Dat kan onderweg voor behoorlijk wat stress zorgen, of in het slechtste geval zelfs voor schade.

Wat doet campernavigatie anders?

Een speciaal campernavigatiesysteem is ontworpen met campers en auto's met aanhanger in gedachten. Je voert vooraf de lengte, breedte, hoogte en het gewicht van je combinatie in. Op basis daarvan worden alleen routes getoond die ook echt geschikt zijn voor jouw voertuig. En dat maakt een wereld van verschil.

Zo vermijd je automatisch bruggen waar je niet onderdoor kunt, te smalle weggetjes in dorpjes of natuurgebieden, steile hellingen waar je niet comfortabel kunt rijden of keren en wegen waar een caravan officieel niet is toegestaan. Veel campernavigaties bieden ook aanvullende functies. Denk aan filters voor campings, servicepunten of camperplaatsen, kaarten die je offline kunt gebruiken in gebieden zonder bereik, weergave van hellingspercentages en scherpe bochten onderweg en waarschuwingen voor zijwind, milieuzones of tolwegen. Sommige systemen kun je zelfs koppelen aan een achteruitrijcamera, wat handig is bij parkeren of keren op krappe plekken.

Wat je bij campernavigatie ook vaak ziet: een groter scherm dan bij standaard modellen. Dat is geen luxe, maar een bewuste keuze. De zitpositie in een camper is meestal hoger en wat verder van het dashboard af. Een scherm van 7 inch of groter zorgt dan voor beter overzicht en leesbaarheid, zonder dat je moet turen of knijpen met je ogen. Zeker als je tijdens het rijden snel de kaart of de aanwijzingen wilt checken, is dat een voordeel.

©GARMIN International ©2022

Voorbeelden uit de praktijk

Stel: je rijdt met een camper door de Ardennen. De kortste route volgens je telefoon gaat dwars door een dorpje met een smal bruggetje en steile oprit. Een standaard navigatie stuurt je daar zonder waarschuwing heen. Een campernavigatie herkent de beperkingen en kiest een alternatieve route via een doorgaande weg, ook al is die iets langer. Of je rijdt in Zuid-Frankrijk met een caravan achter je auto. Je komt bij een tunnel waar voertuigen hoger dan 2,60 meter niet doorheen mogen. Een gewone navigatie weet dat niet – een campernavigatie voorkomt dit soort problemen.

Is het altijd nodig?

Als je met een compacte buscamper reist die nauwelijks groter is dan een gewone auto, heb je in de praktijk minder snel last van beperkingen. Maar zodra je camper langer of hoger is, of je met een flinke caravan rijdt, wordt specifieke navigatie al snel een stuk comfortabeler – en veiliger. Ook voor langere reizen of tochten buiten West-Europa is het verschil merkbaar. Niet elk land signaleert hoogte- of gewichtsbeperkingen even duidelijk. Dan is het prettig als je navigatie dat voor je bijhoudt.

Campernavigatie kopen? Hier moet je op letten

Niet elk navigatiesysteem voor campers biedt dezelfde functies. Let daarom goed op de specificaties voordat je iets aanschaft. Controleer of je de voertuigafmetingen (lengte, breedte, hoogte, gewicht) kunt invoeren. Alleen dan kan het systeem echt rekening houden met obstakels op de route. Kijk ook naar het kaartmateriaal: is het actueel en dekt het voldoende landen? Zeker als je buiten West-Europa reist, is dat belangrijk. Sommige modellen bieden gratis kaartupdates, anderen niet. Let daarnaast op of er specifieke camper-POI's in het systeem zitten, zoals camperplaatsen, servicestations of campings. Ook de gebruikersinterface speelt een rol: is het systeem vlot te bedienen, ook als je onderweg bent? En niet onbelangrijk: hoe groot is het scherm? Bij voorkeur is dat minstens 7 inch. Een groter scherm is niet alleen prettiger tijdens het rijden, maar maakt het ook makkelijker om in een oogopslag hellingen, bochten en alternatieven te overzien. Ten slotte: als je al een achteruitrijcamera hebt, controleer dan of deze te koppelen is aan het systeem. Dat maakt het manoeuvreren op een krappe camping een stuk makkelijker.

Fijne vakantie!

Een campernavigatie lijkt op het eerste gezicht misschien een extra uitgave, maar het levert je onderweg vooral rust en gemak op. Geen stress over bruggen, geen gedoe bij keren, en geen verrassingen bij tunnels of bergwegen. Zeker als je vaker met je camper of caravan op pad gaat, is het een investering die je reis een stuk comfortabeler en ontspannen maakt.

P.S. Ook handig als je vaak op pad bent:

Een compacte camping-wasmachine