-
1. Почеток
- 1.1 За верзиска контрола
- 1.2 Кратка историја на Git
- 1.3 Основи на Гит
- 1.4 Командната линија
- 1.5 Инсталирање на Git
- 1.6 First-Time Git Setup
- 1.7 Getting Help
- 1.8 Заклучок
-
2. Основите на Git
-
3. Гранење во Git
- 3.1 Гранење објаснето
- 3.2 Основно разгранување и спојување
- 3.3 Branch Management
- 3.4 Работни процеси
- 3.5 Далечински гранки
- 3.6 Ребаза
- 3.7 Заклучок
-
4. Git на Сервер
- 4.1 Протоколите
- 4.2 Добивање на Git на сервер
- 4.3 Генерирање на вашиот SSH јавен клуч
- 4.4 Поставување на серверот
- 4.5 Гит демон
- 4.6 Smart HTTP
- 4.7 GitWeb
- 4.8 GitLab
- 4.9 Опции за домаќини на трети лица
- 4.10 Заклучок
-
5. Дистрибуиран Git
- 5.1 Дистрибуирани работни процеси
- 5.2 Придонес кон проект
- 5.3 Приватен мал тим
- 5.4 Одржување на проект
- 5.5 Заклучок
-
6. GitHub
-
7. Git Алатки
- 7.1 Revision Selection
- 7.2 Интерактивно стажирање
- 7.3 Stashing and Cleaning
- 7.4 Signing Your Work
- 7.5 Searching
- 7.6 Rewriting History
- 7.7 Reset Demystified
- 7.8 Напредно спојување
- 7.9 Rerere
- 7.10 Дебагирање со Git
- 7.11 Submodules
- 7.12 Збивање
- 7.13 Заменување
- 7.14 Складирање на ингеренции
- 7.15 Заклучок
-
8. Персонализација на Git
- 8.1 Git Configuration
- 8.2 Git Атрибути
- 8.3 Git Hooks
- 8.4 An Example Git-Enforced Policy
- 8.5 Заклучок
-
9. Git и други системи
- 9.1 Git како Клиент
- 9.2 Мигрирање кон Git
- 9.3 Заклучок
-
10. Внатрешноста на Git
- 10.1 Plumbing and Porcelain
- 10.2 Git Objects
- 10.3 Git References
- 10.4 Packfiles
- 10.5 The Refspec
- 10.6 Transfer Protocols
- 10.7 Maintenance and Data Recovery
- 10.8 Environment Variables
- 10.9 Заклучок
-
A1. Appendix A: Git во други околини
- A1.1 Graphical Interfaces
- A1.2 Git in Visual Studio
- A1.3 Git in Eclipse
- A1.4 Git in Bash
- A1.5 Git in Zsh
- A1.6 Git in Powershell
- A1.7 Заклучок
-
A2. Appendix B: Вметнување на Git во вашите апликации
- A2.1 Command-line Git
- A2.2 Libgit2
- A2.3 JGit
- A2.4 go-git
-
A3. Appendix C: Git команди
- A3.1 Setup and Config
- A3.2 Getting and Creating Projects
- A3.3 Basic Snapshotting
- A3.4 Branching and Merging
- A3.5 Sharing and Updating Projects
- A3.6 Inspection and Comparison
- A3.7 Debugging
- A3.8 Patching
- A3.9 Email
- A3.10 External Systems
- A3.11 Administration
- A3.12 Plumbing Commands
2.1 Основите на Git - Добивање складиште за Git
Ако можете да прочитате само едно поглавје за да одите со Git, тоа е тоа. Ова поглавје ја опфаќа секоја основна команда што ви е потребна за да го направите огромното мнозинство на работи што на крајот ќе го потрошите вашето време со Git. До крајот на поглавјето, треба да бидете во можност да го конфигурирате и иницијализирате складиштето, да започнете и да запирате датотеки за следење и да направите промени и промени. Исто така, ќе ви покажеме како да го поставите Git за игнорирање на одредени датотеки и обрасци на датотеки, како брзо и лесно да ги вратите грешките, како да ја разгледувате историјата на вашиот проект и да ги гледате промените помеѓу обврските и како да притиснете и повлечете од оддалечените складишта .
Добивање складиште за Git
Обично добивате репозиториум на Git на еден од два начина:
-
Можете да преземете локален директориум кој моментално не е под контрола на верзијата, и да го претворите во репозиториум Git, или
-
Можете да clone постоечки репозиториум Git од друго место.
Во секој случај, ќе завршиш со репозиториум Git на вашата локална машина, подготвен за работа.
Иницијализирање на складиште во постоечки директориум
Ако имате директориум на проект кој во моментов не е под контрола на верзијата и сакате да го стартувате контролирањето со Git, прво треба да отидете во директориумот на тој проект. Ако никогаш не сте го направиле тоа, изгледа малку поинаку, во зависност од кој систем работи:
за Linux:
$ cd /home/user/my_project
за Mac:
$ cd /Users/user/my_project
за Windows:
$ cd /c/user/my_project
и напишете:
$ git init
Ова создава нов поддиректориум наречен .git
кој ги содржи сите ваши неопходни датотеки за складиште - скелет на Git складиште.
Во овој момент, ништо во вашиот проект не е следено.
(Види Внатрешноста на Git за повеќе информации за точното што датотеките се содржани во директориумот .git
што само што сте го создале.)
Ако сакате да ја стартувате верзијата со контролирање на постоечките датотеки (за разлика од празен директориум), најверојатно треба да започнете со следење на тие датотеки и да направите почетна обврска.
Ова може да го постигнете со неколку команди за git add
кои ги специфицираат датотеките што сакате да ги следите, а потоа следи git commit
:
$ git add *.c
$ git add LICENSE
$ git commit -m 'initial project version'
Ќе поминеме што прават овие команди за само една минута. Во овој момент, имате репозиториум Git со следени датотеки и почетна обврска.
Клонирање на постоечки складиште
Ако сакате да добиете копија од постоечкото складиште на Git - на пример, проект што би сакале да придонесете - командата што ви треба е git clone
.
Ако сте запознаени со други VCS системи како што е Subversion, ќе забележите дека командата е "клон", а не "исход".
Ова е важна разлика - наместо да се добие само работна копија, Git добива целосна копија од речиси сите податоци што ги има серверот.
Секоја верзија на секоја датотека за историјата на проектот се повлекува по дифолт кога работи 'git clone`.
Всушност, ако вашиот серверски диск е оштетен, често може да го користите речиси секој од клоновите на кој било клиент за да го поставите серверот назад во состојбата во која беше клинички (може да изгубите некои куки од серверот и слично, но сите верзии на податоци ќе бидат таму - видете Добивање на Git на сервер за повеќе детали).
Клонирате складиште со git clone <url>
.
На пример, ако сакате да ја клонирате библиотеката со поврзување со Git наречена libgit2
, можете да го направите вака:
$ git clone https://github.com/libgit2/libgit2
Тоа создава директориум наречен libgit2
, иницијализира директориум` .git` во него, ги симнува сите податоци за тоа складиште и проверува работна копија од најновата верзија.
Ако влезете во новиот libgit2
директориум кој е само создаден, ќе ги видите проектните датотеки таму, подготвени да бидат вклучени или користени.
Ако сакате да го клонирате складиштето во директориумот наречен нешто друго освен libgit2
, можете да го одредите како следната опција на командната линија:
$ git clone https://github.com/libgit2/libgit2 mylibgit
Оваа команда го прави истото како и претходната, но целниот директориум се нарекува mylibgit
.
Git има голем број на различни протоколи за пренос што можете да ги користите.
Претходниот пример го користи протоколот https: //
, но може да видите и git: //
или user @ server: path / to / repo.git
, кој го користи SSH-протоколот за пренос.
Добивање на Git на сервер ќе ги воведат сите достапни опции кои серверот може да ги постави за да пристапи до вашиот Git складиште и предностите и негативностите на секоја од нив.