Ако сте потребител на Linux, най-вероятно се намирате в Git в даден момент, може би докато се опитвате да изтеглите нова програма или да разгледате системи за управление на версии като CVS или Subversion. Git е системата за контрол на редакциите, създадена от известния Linus Torvalds на ядрото на Linux, поради липса на удовлетворение от съществуващите решения. Основният акцент в дизайна е върху скоростта, или по-специално върху ефективността. Git адресира много от недостатъците на предишните системи и прави всичко в много по-малко време.

Какво прави Git

Да приемем, че работите върху създаването на уеб сайт за клиент. Те заявяват това, което искат, проектирате, преглеждат и правят ревизии, изплакват, повтарят. С всеки набор от ревизии от страна на клиента сайтът се променя и расте. По-късно клиентът може да каже "Харесва ми по-добре начина, по който изглеждаше през септември миналата година". При нормални обстоятелства имате проблем. Може да нямате всички файлове и данни от това време и кодът ви може да се е променил толкова много, че връщането назад ще бъде трудно или невъзможно.

Точката на системата за контрол на ревизиите е да се решат почти всички проблеми в горния параграф. Можете да проследявате всяка промяна в кода и файловете си и да се връщате навсякъде, където са нещата.

Как функционира Git

Директорията на всеки проект е свое собствено Git хранилище. Поддържате всичките си файлове за този проект в тази директория и периодично кажете на Git да актуализира информацията си с текущото състояние на файловете. Този процес на казване на Гит да записва състоянието е ангажимент . Всеки път, когато се ангажирате (което трябва да бъде често), Git разглежда всички файлове, които са инструктирани да проследява, и записва разликите в тези файлове (не всички нови файлове) в директорията .git. Всеки ангажимент се превръща в нова точка за спасяване на разработването на вашия проект.

По желание можете да натиснете местното хранилище за git на външен хост, като например GitHub.com . Това позволява на многобройните сътрудници на даден проект да могат да правят чести, бързо да се ангажират с местните си репо сделки, след това да обединяват всички тези местни ангажименти в една актуализация на онлайн хранилището. Това е едно от нещата, които правят Git по-бързо да се използва от някои други VCS системи: можете да се ангажирате често с локалния си хранилище, без да губите време и честотна лента, като трябва да качвате на сървър всеки за всеки.

Получаване на Git

Повечето потребители на Linux трябва да имат Git (или git-core ) достъпни в стандартните хранилища на техните дистрибуции. Потребителите на Ubuntu могат да го инсталират, като кликнат тук или в терминала:

 sudo apt-get инсталирате git-core 

Ако сте на друга платформа или по друг начин не можете да използвате такива хранилища, можете да изтеглите и ръчно да инсталирате пакети тук. Нашите примери са предназначени за Linux, но трябва да бъдат идентични за всички платформи, поддържани от Git.

Използване на Git

Процесът на създаване на локално хранилище Git е бърз и лесен. Създайте директория, която възнамерявате да използвате за проекта, и отворете терминала си до това място. На командния ред въведете командата

 git init 

Това ще създаде директорията .git, за да задържи информацията за хранилището ви. Вероятно ще искате да започнете да добавяте файлове. Ще започнем, като създадем примерния файл README, добавим го в списъка с файлове на хранилището, за да го гледате, след което предаде нашия файл на хранилището.

 # Въведете някакъв текст в нов файл ехо "TODO: Създаване на документация"> README.txt # Сега кажете на Git да следите промените на този файл # Това трябва да бъде направено само веднъж на файл (повече # в този момент) git добавете README.txt # Сега запазете състоянието в Git хранилището git commit README.txt 

Ще бъдете доведени до екран за текстов редактор (точно кой текстов редактор зависи от вашата дистрибуция и конфигурация), където трябва да въведете бележки за този ангажимент. Това обикновено са кратки резюмета на промените, настъпили след последния ангажимент. След като запазите и излезете от текстовия редактор, комитът трябва да бъде завършен успешно.

По същество създадохме моментна снимка на текущото състояние на файла. Всички допълнителни промени (които ще извършите) ще бъдат запазени в горната част.

Добавянето и предаването на всеки файл поотделно, както в горния пример, може да стане досадно. За да го отстраните, вместо това можете да добавите всички файлове в текущата директория с

 #Забележете последното "." git добави. 

и можете да обвържете всички известни, променени файлове едновременно с

 git commit -a 

Някои други удобни опции на командата git включват:

 # Направете пълен клонинг на съществуващото хранилище, като например от уеб сайта на софтуерния проект git clone (URL, т.е. git: //github.com/github/linux-2.6.git) # Преместване / преименуване на файл. Това ви помага да премахнете и добавите отново файла #if е бил преместен от bash git mv (source) (destination) # Изтриване на файл и премахване от Git repo git rm (target) #Вижте клонове в това хранилище git клон # Създаване на нов клон на Git tree git branch (ново име на клон, т.е. "експериментално") # Превключване от един клон към друг git checkout (име на клон, т.е. "експериментално") #Merge клон (клон) сливане (клон) 

Това, разбира се, е само началото на това, което Гит може да направи. Ако смятате, че е полезно, силно препоръчвам официалната книга на общността Git, за да получите по-задълбочена представа как да използвате този умен софтуер.