Checka in filer och visa historik
Nu när du har initierat din Git-lagringsplats är du redo att börja lägga till filer. I den här lektionen får du lära dig hur du instruerar Git att spåra ändringarna i filerna på lagringsplatsen.
Kommentar
Kommandona i den här enheten visas för att illustrera begrepp. Kör inte kommandona än. Du kommer att öva på det du lär dig här snart.
Mappstruktur för din lagringsplats
När du arbetar med ett versionskontrollsystem som Git är det viktigt att planera hur du lagrar dina filer. Det är en bra idé att ha en tydlig mappstruktur.
Om du skapar Bicep-kod för att distribuera ett program eller en annan lösning är det också en bra idé att lagra dina Bicep-filer på samma lagringsplats som programkoden och andra filer. På så sätt, när någon behöver lägga till en ny funktion som ändrar både Bicep och programkod, spåras de tillsammans.
Om du planerar mappstrukturen blir det också enklare att distribuera lösningen från en pipeline. Du får lära dig mer om pipelines i en framtida modul.
Olika team har olika konventioner för hur de konfigurerar sina lagringsplatsmappar och filer. Även om du inte arbetar med ett team är det fortfarande en bra idé att besluta om en konvention att följa. En bra fil- och mappstruktur hjälper alla som behöver arbeta med din kod i framtiden.
Om ditt team inte redan har en inställning, här är ett förslag på hur du kan göra det:
- Skapa en README.md fil i roten på lagringsplatsen. Den här textfilen, som är skriven i Markdown, beskriver lagringsplatsens innehåll och ger instruktioner som hjälper teammedlemmar att arbeta på lagringsplatsen.
- Skapa en distributionsmapp i roten på lagringsplatsen. Inuti mappen:
- Lagra din huvudsakliga Bicep-mall med namnet main.bicep.
- Skapa en undermapp för moduler för att lagra dina Bicep-moduler.
- Om du har andra skript eller filer som används under distributionen lagrar du dem i distributionsmappen.
- Skapa en src-mapp för källkod i roten på lagringsplatsen. Använd den för att lagra programkod.
- Skapa en dokumentmapp i roten på lagringsplatsen . Använd den för att lagra dokumentation om din lösning.
Här är en illustration av hur den här strukturen kan se ut för ditt leksaksföretags webbplats:
Mellanlagra dina ändringar
När du har ändrat en fil eller filer måste du mellanlagra dem. Mellanlagring meddelar Git att du anser att ändringarna är tillräckligt viktiga för att behållas. Det kan verka som ett onödigt steg, men mellanlagring ger dig flexibilitet när du arbetar. Du kan till exempel göra ändringar i flera filer men bara behålla en av dem. Eller så kanske du bara vill behålla några av de ändringar som du har gjort i en fil.
Om du vill mellanlagra en fil använder git add
du kommandot och anger det filnamn eller mappnamn som du vill mellanlagra. När du har mellanlagrat en fil vet Git att du kanske vill genomföra ändringarna. När du frågar efter lagringsplatsens status med hjälp git status
av visas de mellanlagrade ändringarna.
Viktigt!
När du har mellanlagrat en fil kommer Git inte att registrera ändringarna om du gör ytterligare ändringar i den innan du checkar in den. Du måste mellanlagra filen igen för att Git ska kunna inkludera de senaste ändringarna.
Anta till exempel att du har skapat en Bicep-modul för att definiera ett Azure Cosmos DB-konto. Den heter cosmos-db.bicep och du sparade den i mappen deploy/modules . Så här kan du mellanlagra filen:
git add deploy/modules/cosmos-db.bicep
Du kan också mellanlagra alla ändringar i lagringsplatsen genom att köra det här kommandot från rotmappen på lagringsplatsen:
git add .
Genomför de mellanlagrade ändringarna
En incheckning representerar en uppsättning ändringar i en eller flera filer på lagringsplatsen. När du är redo att genomföra de ändringar som du har mellanlagrat använder git commit
du kommandot . Incheckningen innehåller ett incheckningsmeddelande som är en läsbar beskrivning av ändringarna.
Här är ett exempel som visar hur du genomför de mellanlagrade ändringarna som visades tidigare:
git commit --message "Add Cosmos DB account definition"
Kommentar
Visual Studio Code kan också checka in på din Git-lagringsplats. När du använder Git-integrering i Visual Studio Code frågar Visual Studio Code om du inte redan har mellanlagrat filerna om du vill att alla ändrade filer ska mellanlagras åt dig. Du kan till och med ange detta som standardbeteende. Om du vill kan du manuellt mellanlagra och avaktivera filer med hjälp av källkontroll i Visual Studio Code.
Gör incheckningsmeddelandena korta, men gör dem beskrivande. När du eller en gruppmedlem granskar incheckningshistoriken i framtiden bör varje incheckningsmeddelande förklara vad ändringen var och varför du gjorde den.
Det finns inga regler för vilka incheckningsmeddelanden som måste innehålla eller hur de formateras. Men konventionellt är de skrivna i nutid och i en fullständig mening, som om du ger order till din kodbas.
Dricks
Det är en bra idé att skriva beskrivande incheckningsmeddelanden även när du arbetar på egen hand. Någon annan kan behöva titta på din kod i framtiden. Även om de inte gör det kan du behöva granska din egen historia, och du vill göra ditt eget liv enklare!
Här är några exempel på bra incheckningsmeddelanden:
- Uppdatera App Service-konfigurationen för att lägga till nätverkskonfiguration.
- Ta bort lagringskontot eftersom det har ersatts av en Cosmos DB-databas.
- Lägg till Application Insights-resursdefinition och integrera med funktionsappen.
Visa en fils historik
När du checkar in filer till git-lagringsplatsen kan du använda git log
CLI-kommandot för att visa historiken för en fil eller till och med alla incheckningar till lagringsplatsen.
Om du vill visa en lista över incheckningar kör du följande kommando:
git log --pretty=oneline
Utdata från det här kommandot visar en lista över incheckningarna, med de senaste incheckningarna först. Varje rad innehåller incheckningshash, som är en identifierare som Git internt använder för att spåra varje incheckning. Det innehåller också incheckningsmeddelandet, vilket är en av anledningarna till att det är så viktigt att skriva bra incheckningsmeddelanden.
Det är också vanligt att visa incheckningar till en specifik fil. Du kan ange filnamnet när du kör git log
kommandot, så här:
git log deploy/main.bicep
Git CLI och git log
kommandot innehåller många argument som du kan använda för att visa information om dina incheckningar och filer. Det är dock ofta enklare att använda Visual Studio Code för att visa incheckningshistoriken för en fil.
I fönstret Visual Studio Code Explorer kan du välja och hålla (eller högerklicka) en fil på lagringsplatsen och sedan välja Visa tidslinje. Fönstret Tidslinje öppnas och visar en lista över varje incheckning som påverkade filen. När du väljer en incheckning visas de exakta ändringarna i filen. Du ser hur du använder den här informationen i nästa övning.