-
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 Водоводне команде
A1.7 Додатак А: Програм Гит у другим окружењима - Гит у Zsh
Гит у Zsh
Zsh љуска се испоручује са библиотеком таб-довршавања за програм Гит.
Са бисте је користили, једноставно извршите autoload -Uz compinit && compinit
у вашем .zshrc
фајлу.
Интерфејс Zsh љуске је моћнији од оног у Bash:
$ git che<tab>
check-attr -- display gitattributes information
check-ref-format -- ensure that a reference name is well formed
checkout -- checkout branch or paths to working tree
checkout-index -- copy files from index to working directory
cherry -- find commits not merged upstream
cherry-pick -- apply changes introduced by some existing commits
Двосмислена таб-довршавања нису само наведена; уз њих се наводе и корисни описи, а можете и графички да се крећете кроз листу тако што настављате да притискате тастер таб. Ово функционише са Гит командама, њиховим аргументима и именима ствари у репозиторијуму (као што су референце и удаљени репозиторијуми), као и са именима фајлова и свим осталим стварима које Zsh зна како да таб-доврши.
Zsh љуска се испоручује са оквиром за добијање информација из система за контролу верзије, под називом vcs_info
.
Ако на десној страни желите да видите име гране, додајте следеће линије у свој ~/.zshrc
фајл:
autoload -Uz vcs_info
precmd_vcs_info() { vcs_info }
precmd_functions+=( precmd_vcs_info )
setopt prompt_subst
RPROMPT='${vcs_info_msg_0_}'
# PROMPT='${vcs_info_msg_0_}%# '
zstyle ':vcs_info:git:*' formats '%b'
Резултат овога је да се на десној страни прозора терминала приказује текућа грана, кадгод се љуска налази у Гит репозиторијуму. Такође се подржава и лева страна, наравно; једноставно уклоните коментар са доделе за PROMPT. Изгледа отприлике овако:
![Прилагођени `zsh` одзив](png/zsh-prompt.png)
zsh
одзивЗа виђе информација у вези vcs_info
, погледајте његову документацију у zshcontrib(1)
страници упутства, или на мрежи на адреси http://zsh.sourceforge.net/Doc/Release/User-Contributions.html#Version-Control-Information.
Можда ће вам уместо vcs_info
више одговарати скрипта за прилагођавање одзива која се испоручује уз програм Гит, под називом git-prompt.sh
; за детаље погледајте https://github.com/git/git/blob/master/contrib/completion/git-prompt.sh.
git-prompt.sh
је компатибилна и са Bash и са Zsh.
Zsh љуска је довољно моћна да постоје комплетни радни оквири који служе за њено побољшање. Један од њих се назива „oh-my-zsh” и може да се нађе на адреси https://github.com/robbyrussell/oh-my-zsh. Систем додатака за oh-my-zsh долази за моћнним таб-довршавању за Гит и има разне „теме” одзива, од којих многе приказују податке из контроле верзије. Пример oh-my-zsh теме. је само један од примера шта може да се постигне овим системом.
![Пример _oh-my-zsh_ теме](png/zsh-oh-my.png)