-
1. Почетак
- 1.1 О контроли верзије
- 1.2 Кратка историја програма Гит
- 1.3 Шта је Гит?
- 1.4 Командна линија
- 1.5 Инсталирање програма Гит
- 1.6 Подешавања за први пут
- 1.7 Тражење помоћи
- 1.8 Резиме
-
2. Основе програма Гит
- 2.1 Прављење Гит репозиторијума
- 2.2 Снимање промена над репозиторијумом
- 2.3 Преглед историје комитова
- 2.4 Опозив
- 2.5 Рад са удаљеним репозиторијумима
- 2.6 Означавање
- 2.7 Гит алијаси
- 2.8 Резиме
-
3. Гранање у програму Гит
- 3.1 Укратко о гранању
- 3.2 Основе гранања и спајања
- 3.3 Управљање гранама
- 3.4 Процеси рада са гранањем
- 3.5 Удаљене гране
- 3.6 Ребазирање
- 3.7 Резиме
-
4. Гит на серверу
- 4.1 Протоколи
- 4.2 Постављање програма Гит на сервер
- 4.3 Генерисање јавног SSH кључа
- 4.4 Подешавање сервера
- 4.5 Гит демон
- 4.6 Паметан HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Опције за хостовање које нуде трећа лица
- 4.10 Резиме
-
5. Дистрибуирани Гит
-
6. GitHub
-
7. Гит алати
- 7.1 Избор ревизија
- 7.2 Интерактивно стејџовање
- 7.3 Скривање и чишћење
- 7.4 Потписивање вашег рада
- 7.5 Претрага
- 7.6 Поновно исписивање историје
- 7.7 Демистификовани ресет
- 7.8 Напредно спајање
- 7.9 Rerere
- 7.10 Отклањање грешака са програмом Git
- 7.11 Подмодули
- 7.12 Паковање
- 7.13 Замена
- 7.14 Складиште акредитива
- 7.15 Резиме
-
8. Прилагођавање програма Гит
- 8.1 Конфигурисање програма Гит
- 8.2 Гит атрибути
- 8.3 Гит куке
- 8.4 Пример полисе коју спроводи програм Гит
- 8.5 Резиме
-
9. Гит и остали системи
- 9.1 Гит као клијент
- 9.2 Мигрирање на Гит
- 9.3 Резиме
-
10. Гит изнутра
- 10.1 Водовод и порцелан
- 10.2 Гит објекти
- 10.3 Гит референце
- 10.4 Pack фајлови
- 10.5 Рефспек
- 10.6 Протоколи за пренос
- 10.7 Одржавање и опоравак податак
- 10.8 Променљиве окружења
- 10.9 Резиме
-
A1. Додатак А: Програм Гит у другим окружењима
- A1.1 Графички интерфејси
- A1.2 Гит у Visual Studio
- A1.3 Гит у Visual Studio Code
- A1.4 Гит у IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine
- A1.5 Гит у Sublime Text
- A1.6 Гит унутар Bash
- A1.7 Гит у Zsh
- A1.8 Гит у Powershell
- A1.9 Резиме
-
A2. Додатак Б: Уграђивање програма Гит у ваше апликације
- A2.1 Гит из командне линије
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
- A2.5 Dulwich
-
A3. Додатак В: Гит команде
- A3.1 Подешавање и конфигурација
- A3.2 Набављање и креирање пројеката
- A3.3 Основно снимање
- A3.4 Гранање и спајање
- A3.5 Дељење и ажурирање пројеката
- A3.6 Инспекција и поређење
- A3.7 Отклањање грешака
- A3.8 Крпљење
- A3.9 Имејл
- A3.10 Спољни системи
- A3.11 Администрација
- A3.12 Водоводне команде
A2.1 Додатак Б: Уграђивање програма Гит у ваше апликације - Гит из командне линије
Ако је ваша апликација намењена програмерима, велике су шансе да би јој користила интеграција са контролом изворног кода. Чак би и апликације који нису намењене програмерима, као што су едитори докумената, потенцијално могле да имају користи од могућности контроле верзије, а модел програм Гит врло добро функционише у многим различитим сценаријима.
Ако је потребно да програм Гит интегришете са својом апликацијом, у суштини имате две опције: покрените љуску и позовите git
програм из командне линије, или уградите Гит библиотеку у своју апликацију.
Овде ћемо приказати интеграцију са командном линијом, као и неколико најпопуларнијих Гит библиотека намењених за уградњу.
Гит из командне линије
Једна опција је да се покрене процес љуске и да се употреби Гит алат из командне линије да обави посао. Предност овога је што је канонски и што су подржане све могућности програма Гит. Такође је прилично једноставно, јер већина окружења за време извршавања имају релативно просте начине за позивање процеса са аргументима командне линије. Ипак, овај процес има и неке мане.
Једна је што је комплетан излаз чисти текст. Ово значи да ћете морати да парсирате излазни формат програма Гит који се с времена на време мења да би очитали информације о напретку и резултатима, а то може бити неефикасно и склоно грешкама.
Друга је недостатак опоравка од грешке. Ако је репозиторијум некако оштећен, или корисника има погрешно формирану конфигурациону вредност, програм Гит ће једноставно одбити да изврши многе операције.
Још једна је управљање процесом. Програм Гит од вас захтева да одржавате окружење љуске у одвојеним процесима, што може додати нежељену сложеност. Покушај да се координишу многи овакви процеси (посебно када се потенцијално истом репозиторијуму приступа из неколико репозиторијума) може бити прилично захтеван.