Git
Chapters ▾ 2nd Edition

A1.4 Appendix A: Git в інших середовищах - Git у Bash

Git у Bash

Якщо ви користувач Bash, то можете налагодити зв’язок з деякими з функцій вашої оболонки, щоб зробити взаємодію з Git набагато зручнішою. Git насправді постачає додатки для декількох оболонок, проте вони типово не ввімкнені.

Спочатку, вам треба отримати копію файлу contrib/completion/git-completion.bash з вихідного коду Git. Скопіюйте його до зручного місця, наприклад своєї домашньої директорії, та додайте наступне до вашого .bashrc:

. ~/git-completion.bash

Щойно це зроблено, перейдіть до репозиторія Git та наберіть:

$ git chec<tab>

…та Bash автоматично доповнить git checkout. Це працює для всіх підкоманд Git, параметрів командного рядка, а також віддалених сховищ та назв посилань, коли це доречно.

Також корисно налаштувати ваш запит команд (prompt), щоб відображати інформацію про репозиторій Git поточної директорії. Це може бути настільки простим чи складним, наскільки бажаєте, проте зазвичай є декілька ключових даних, які більшість людей бажають, наприклад поточна гілка, а також статус робочої директорії. Щоб додати це до запиту, просто скопіюйте файл contrib/completion/git-prompt.sh з репозиторія коду Git до своєї домашньої директорій, та додайте щось таке до свого .bashrc:

. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '

\w означає виводити поточну робочу директорію, \$ виводить частину запиту $, а __git_ps1 " (%s)" викликає функцію, що міститься у файлі git-prompt.sh з аргументом формату. Тепер ваш запит bash виглядатиме наступним чином, коли ви знаходитесь десь у керованому Git проекті:

Налаштований запит `bash`.
Figure 161. Customized bash prompt.

Обидва ці скрипти мають корисну документацію; погляньте на вміст git-completion.bash та git-prompt.sh для докладнішої інформації.