Wprowadzenie
Dzisiaj zajmiemy się podstawami Git - narzędzia, które zrewolucjonizowało sposób, w jaki programiści zarządzają kodem źródłowym. Niezależnie od tego, czy pracujesz nad małym projektem osobistym, czy dużą aplikacją w zespole, Git jest niezbędnym narzędziem w arsenale każdego programisty .NET.
Co to jest Git?
Git to rozproszony system kontroli wersji, który pozwala na śledzenie zmian w kodzie, współpracę z innymi programistami i zarządzanie różnymi wersjami projektu. Oto kilka kluczowych pojęć:
• Repozytorium: Miejsce, gdzie przechowywany jest projekt i jego historia.
• Commit: Zapis stanu projektu w danym momencie.
• Branch: Niezależna linia rozwoju projektu.
• Merge: Łączenie zmian z różnych gałęzi.
Podstawowe komendy Git
Zacznijmy od najprostszych komend, które będziesz używać codziennie:
1. Inicjalizacja repozytorium
git init
Ta komenda tworzy nowe repozytorium Git w bieżącym katalogu.
2. Sprawdzanie statusu
git status
Pokazuje aktualny stan repozytorium - które pliki zostały zmodyfikowane, dodane lub usunięte.
3. Dodawanie zmian
git add Program.cs
git add . # Dodaje wszystkie zmodyfikowane pliki
Dodaje zmiany do tzw. "staging area", przygotowując je do commita.
4. Tworzenie commita
git commit -m "Dodano nową funkcję kalkulatora"
Zapisuje zmiany w historii projektu wraz z opisowym komunikatem.
5. Przeglądanie historii
git log
Wyświetla historię commitów w repozytorium.
Praktyczny przykład: Projekt kalkulatora w C#
Zobaczmy, jak możemy użyć Git w prostym projekcie C#. Załóżmy, że tworzymy prosty kalkulator.
Krok 1: Inicjalizacja projektu
mkdir KalkulatorGit
cd KalkulatorGit
git init
dotnet new console
Krok 2: Pierwszy commit
Utwórz plik Program.cs z podstawową strukturą:
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Kalkulator Git");
}
}
Teraz dodajmy i commitujmy te zmiany:
git add Program.cs
git commit -m "Inicjalizacja projektu kalkulatora"
Krok 3: Dodanie funkcji dodawania
Zmodyfikuj Program.cs:
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Kalkulator Git");
Console.WriteLine($"2 + 3 = {Dodaj(2, 3)}");
}
static int Dodaj(int a, int b)
{
return a + b;
}
}
Commitujemy zmiany:
git add Program.cs
git commit -m "Dodano funkcję dodawania"
Krok 4: Tworzenie nowej gałęzi dla funkcji odejmowania
git branch funkcja-odejmowania
git checkout funkcja-odejmowania
Dodajmy funkcję odejmowania:
using System;
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Kalkulator Git");
Console.WriteLine($"2 + 3 = {Dodaj(2, 3)}");
Console.WriteLine($"5 - 3 = {Odejmij(5, 3)}");
}
static int Dodaj(int a, int b)
{
return a + b;
}
static int Odejmij(int a, int b)
{
return a - b;
}
}
Commitujemy zmiany w nowej gałęzi:
git add Program.cs
git commit -m "Dodano funkcję odejmowania"
Krok 5: Łączenie gałęzi
Wracamy do głównej gałęzi i łączymy zmiany:
git checkout main
git merge funkcja-odejmowania
Dobre praktyki w używaniu Git
1. Częste commity: Rób małe, logiczne commity zamiast dużych, zawierających wiele zmian.
2. Opisowe komunikaty commitów: Pisz jasne i zwięzłe opisy tego, co zostało zmienione.
3. Używaj gałęzi: Twórz osobne gałęzie dla nowych funkcji lub eksperymentów.
4. Regularnie synchronizuj: Jeśli pracujesz w zespole, często pushuj i pulluj zmiany.
5. Używaj .gitignore: Ignoruj pliki, które nie powinny być śledzone (np. pliki konfiguracyjne, binaria).
Podsumowanie
Git to potężne narzędzie, które znacząco ułatwia zarządzanie projektem i współpracę z innymi programistami. Opanowanie podstaw Git jest niezbędne dla każdego programisty .NET. Jeśli chcesz pogłębić swoją wiedzę na temat Git oraz innych kluczowych umiejętności w programowaniu .NET, zachęcam do sprawdzenia mojego kursu online "Zostań Programistą .NET". W kursie tym szczegółowo omawiamy nie tylko kontrolę wersji, ale także wiele innych ważnych aspektów programowania, które pomogą Ci stać się skutecznym deweloperem .NET. Dziękuję za uwagę! Jeśli masz pytania lub chcesz podzielić się swoimi doświadczeniami z używaniem Git w projektach .NET, zostaw komentarz poniżej. Powodzenia w Twojej przygodzie z programowaniem!