Gustaf Gustafsson

Något jag ser som min praktikplats saknar är att arbeta med versionshantering. Använder man sig inte av versionshantering så får man jobba tillsammans i en delad mapp med samma filer , tillslut så kommer någon skriva över den andras filer (Git tower) . Fördelen med att jobba med ett versionshantering system är att man kan jobba på samma filer och sen ladda upp sina ändringar och då skapas en ny version så att man inte skriver över varandras  (Git tower). Några av dem andra fördelarna med att jobba med ett versionshanteringssytem är att man kan jobba flera samtidigt, man kan gå tillbaka och titta vad som gick snett och man har backup på det man har gjort (Git tower). Fördelerna med detta handlar mest om att jobba i ett team och det är inte så konstigt att min praktikplats inte har används sig av versionshantering ur den aspekten då han är själv, och när jag har varit med så har vi jobbat med varsitt projekt, men fördelarna finns ju även om man är själv då man kan gå tillbaka och titta i tidigare versioner.

I den här guiden kommer jag att titta närmare på git och github som är ett versionshanteringssystem och det är något som man använder sig av när man utvecklar mjukvaruprogram så att man kan kan checka in och ut källkod från ett repository varje gång en ny kod skapas så skapas en revision (Wahlberg, 2011). I den här guiden har jag tittar närmare på git som är distribuerat versionshanteringssystem vilket betyder att filerna man checkar in inte blir tillgängliga för andra innan man synkroniserar med sitt repository (Wahlberg, 2011).

Git är som sagt ett versionshanteringssystem som utvecklades av samma utvecklare som skapade linux, Linus Thorvald (Rehal, 2014). Rehal (2014) förklarar vidare hur ett distruberat system som git fungerar och han menar att det inte finns något centralt arkiv och vem som helst kan skapa en kopia av det repository. Fördelen med att jobba med ett versionshanteringssystem är att man kan jobba flera stycken på ett webbprojekt (Rehal, 2014).

I den här guiden så utgår jag ifrån Windows 10 som OS eftersom det är det som jag använder. Efter att ha startar upp ett github konto så behöver man installera Git på sin dator. Github erbjuder en desktop klient för både Windows och Mac men vi kommer inte använda någon av dessa i denna guide, vi kommer istället att göra våra uppdateringar med hjälp av Windows commando line, på svenska kommadotolken. Det låter svårare än vad det är, men det är väldigt få kommandon man behöver lära sig för att komma igång med ett github projekt. Men först, installera git på din dator.

 

För Windows http://git-scm.com/download/win

För Mac http://git-scm.com/download/mac

 

Här finns en mer utförlig installationsguide https://help.github.com/articles/set-up-git/

1

 

 

 

 

När du nu har installerat git lokalt på din dator , så är det dags att skapa ett konto på Github, så surfa in på https://github.com/ och gör det. När du väl skapat dig ett konto inne på Github så kommer du mötas av den här sidan

2

Det vi vill göra nu är att skapa ett nytt repository som det heter på engelska,  och översatt till svenska blir det Förvaringsplats. Vi kan kalla det för att vi skapar ett nytt projekt, där vi förvarar den kod vi skriver och skickar till github. Så tryck på den gröna knappen + New repository och då hamnar vi här.

3

sen behöver man också bocka i rutan för initialize this repository with a README. Detta är en fil som måste finnas med i ett gitprojekt, och eftersom vi kommer att “clona” projektet ifrån github så skapar vi denna fil här. Man kan även skapa projektet lokalt först och sen skapa ett repository, men jag föredrar göra det först på github.

Nu har vi skapat vårat första gihub projekt: githubtest

4

Nu är det dags att öppna kommandotolken och den ser ut så här, inte särskilt rolig men användbar. Det första som är bra att lära sig är hur man navigerar sig igenom kataloger. Som ni ser på bilden så är det här default läget när jag startar upp kommadotolken. Jag befinner mig i C:\Users\gustaf men hur tar man sig vidare därifrån?

5

 

 

 

 


Om jag vill komma ner en katalog , alltså till users så skriver jag in kommadot cd..
 cd står för change directory (pcstats, 2011). Skulle jag vilja hoppa tillbaka så skriver jag in cd gustaf i det här fallet. Så för att hoppa bakåt skriver man cd.. och för att lägga till skriver man cd och sen dit man vill, i detta fall cd gustaf.

6

 

 

 

 

Nästa steg är att skapa en mapp dit vi kommer clona vårat projekt som det heter på github språk. Jag skapar en map i kommandotolken genom att skriva följande kommando mkdir och sen det namn som jag vill ge mappen. Sen så använder jag cd.. och cd katalogen för att hamna rätt.

7

 

 

 

 

 

Nu när vi vet hur man hoppar fram och tillbaka i katalogstrukturen så är det dags att clona vårat repository till vår lokala mapp så vi går in på github.com igen och kopierar https adressen som vi blivit tilldelade.

8

 

 

 

 

För att “clona” en mapp till din lokala dator ifrån github så skriver man följande kommando:

git clone https://github.com/dubbelgustaf/githubtest.git (git-scm.com)

9

 

 

 

 

Så nu har vi clonat git till vår lokala dator. Det som vi vill göra nu är att skapa en index fil. För att göra detta i kommandotolken så skriver man in NUL> index.html (Wikihow). På min dator så försöker kommandotolken att öppna filen som jag precis har skapat, men blir nekad på grund av datorns säkerhetsinställningar. Men vi vill ju öppna filen, skriv bara in filens namn i kommandotolken så kommer den att öppna upp den i din förvalda texteditor, i mitt fall Sublime text 2

10

 

 

 

 

Gör en enkel lorem ipsum sida så vi har något att utgå ifrån. Nu när vi har skapat en index.html fil och även ändrat i den, så undrar man ju om git har märkt att vi har gjort något. För att ta reda på statusen bland filerna i ett gitprojekt så anger man git status (git-scm.com).

11

 

 

 

 

 

 

12

 

 

 

När vi anger git status i kommadotolken så får vi detta meddelande: “Untracked files ..” För index.html. Här får vi även en instruktion om hur vi ska göra för att få filen “trackad”. Use “git” add <file>…” Så vi skriver in git add index.html och sen kör en git status så ser vi att vi har en ny fil.

13

 

 

 

Nu när vi har skapat en fil, så vill man kanske se hur katalogen ser ut där vi befinner oss. För att göra det så skriver man dir i kommandotolken.

14

 

 

 

Sen när man har gjort en ändring i sin fil så måste man även göra en commit(git-scm.com). När man gör det så skickar man även in en kommentar om vad man har gjort. Detta kan man göra på följande sätt i kommandotolken. Skriv in git commit index.html -m “Added index to the project” För att skicka med ett meddelande så skriver man -m och “Ditt meddelande här”. Sen när man känner att man är nöjd med sin ändring så är det dags att skicka synka mot github.com och då känner man en git push som det heter.

15

 

 

 

 

 

Surfar vi sedan in på vårat konto på github och går in på vårat repo så kommer det se ut så här om allt har gått rätt till.

16

 

 

 

 

Som ni ser så finns nu index.html i vårat github repo. Bara för att ytterligare visa hur github fungerar så kommer jag att skapa en mapp till där jag kommer göra endel andra ändringar och sedan göra en git push. Jag skapade en ny map c:/test och gjorde en git clone. Nu tänkte jag gå in och göra om index.html filen i test mappen och sedan göra en git push.

17

 

 

 

 

 

Jag bestämmer mig för att ta bort ul listan av någon anledning. Efter att jag gjort det så gör jag en git commit och anger ett meddelande i stil med “Removed ul list” . När jag gör en git push så kommer det att synkas med mitt github konto, men inte för den personen som sitter lokalt i mappen testargit, för att vara tydligare så kommer det inte synkas mot dem som jobbar lokalt. Det man måste göra då för att hämta dem senaste uppdateringarna , eller synka med github.com för att göra det tydligare. Så gör man en git pull.

Nu är dem båda lokala mapparna synkade till github.com. Om vi stannar på github.com lite till så kan vi så att i vårat repo.

18

 

 

 

 

Nu ser vi den senaste kommentaren ifrån index.html ändring vilket är “removed ul list” om vi gör så att vi trycker på den filen, så får vi fram den här historian:

19

 

 

 

 

Inga konstigheter här inte , vi tog just bort ul listan och det kan vi se här.


Sammanfattning enkla av git-kommandon.

git clone

Gör en kopia eller “clonar” ditt respository från github.com.  Exempelvis  git clone https://github.com/dubbelgustaf/githubtest.git  Enligt siteground.

git add

Lägger filer förändringar i arbetskatalogen till index . T.ex : git add test.php

git commit

Skickar iväg ändringarna som är gjorda och pekar det mot den filen man jobbar emot, skriver man det så här git commit -m “Lite trix och fix” så skickas det med som en kommentar. (Siteground)

git pull

Detta kommando hämtar filer ifrån ditt repository och synkar det med ditt lokala menar sitepoint.

git push

Enligt Sitepoint så skickar man iväg modiferade filer till repositoriet på github.com med kommandot git push.

 

Referenser

git-scm.com (U.Å).  Git Basics – Getting a Git Repository. Elektronisk tillgänglig: https://git-scm.com/book/en/v2/Git-Basics-Getting-a-Git-Repository

git-scm.com (U.Å). Git Basics – Recording Changes to the Repository. Elektronisk tillgänglig: https://git-scm.com/book/en/v2/Git-Basics-Recording-Changes-to-the-Repository

Git Tower (UÅ). Why use a version control system. Elektronisk tillgänglig: http://www.git-tower.com/learn/git/ebook/mac/basics/why-use-version-control

Pcstats (2011) Beginners guides: Windows command prompt. Elektronisk tillgänglig:http://www.pcstats.com/articleview.cfm?articleid=1723&page=3

Siteground (U.Å). Git tutorials: Git commands. https://www.siteground.com/tutorials/git/commands.htm

Wahlberg, Daniel (2011). Versionshantering för nybörjare. Elektronisk tillgänglig: http://www.dwahlberg.se/2011/versionshantering-for-nyborjare/

Rehal, Adam (2014). Guide till git. Versionshantering när den är som bäst. 13 Pixlar. Elekronisk tillgänglig: http://13pixlar.se/artiklar/guide-till-git-versionshantering-nar-den-ar-som-bast/

Wikihow (U.Å). How to Create and Delete Files and Directories from Windows Command Prompt. Elektronisk tillgänglig: http://www.wikihow.com/Create-and-Delete-Files-and-Directories-from-Windows-Command-Prompt