Zajęło mi sporo czasu, nim naprawdę pojąłem Git'a. W miarę jak coraz częściej używałem go w miejscu pracy, starałem się ludziom wyjaśniać czym on jest i dlaczego wciąż z niego korzystamy. W praktyce, krzywa nauki Git'a jest dość stroma w porównaniu z wieloma innymi systemami. Znam przypadki deweloperów, którzy pokochali Git'a, gdy wreszcie go zrozumieli, choć dojście do takiego momentu często bywa żmudne.
Książka ta jest skierowana do programistów, którzy nieszczególnie lubią Subversion, Perforce lub inny aktualnie wykorzystywany system SCM1, a za to słyszeli coś dobrego o Git, lecz nie wiedzą jak się za niego zabrać, albo czemu jest tak niezwykły. Chodzi w niej o przejrzyste, zwięzłe i czytelne objaśnienie Git'a, w sposób możliwie najprostszy. Moim celem jest, abyś po ukończeniu lektury rozumiał zarówno wewnętrzną budowę Git'a, jak i jego zasadnicze funkcje.
By to osiągnąć, zacznę książkę (po wprowadzeniu) od omówienia jak właściwie działa Git, zamiast tego, jak z niego korzystać. Stwierdzam, że tak naprawdę nie rozumiałem Git'a i miałem wiele problemów z jego wykorzystaniem, dopóki nie pojąłem co on właściwie robi na niskim poziomie zamiast sądzić, że jest to jakaś inna, dziwaczna odmiana systemu SVN2.
____________________
1 SCM — ang. Software Configuration Management
2 SVN — system kontroli wersji, znany również jako Subversion