Skip to content

Commit

Permalink
Merge pull request #210 from dev99problems/migrate_02_git_basics/aliases
Browse files Browse the repository at this point in the history
Migrate 02-git-basics/aliases.asc & getting-a-repository.asc
  • Loading branch information
hedrok authored Nov 21, 2024
2 parents e930973 + 3cbae66 commit d6bfd53
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 28 deletions.
12 changes: 6 additions & 6 deletions book/02-git-basics/sections/aliases.asc
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@
=== Псевдоніми Git

(((aliases)))
До того, як завершити розділ про базовий Git, є ще одна маленька підказка, щоб зробити ваше користування Git простішим, легшим та більш знайомим: псевдоніми.
Ми більше не будемо про них згадувати та будемо вважати, що ви використовуєте їх самостійно в решті книги, проте напевно вам слід знати, як їх використовувати.
Перед тим, як перейти до наступного розділу, ми хочемо представити особливість, яка може зробити ваше користування Git простішим, легшим та більш знайомим: псевдоніми.
Для ясності, ми більше не будемо використовувати їх деінде в цій книзі, але якщо ви продовжите працювати з Git регулярно, псевдоніми -- це те, про що ви повинні знати.

Git сам не намагається здогадатись, яку команду ви набрали, якщо ви набрали її частково.
Якщо ви не хочете набирати команди Git повністю, ви легко можете налаштувати псевдоніми для кожної команди за допомогою `git config`.(((git commands, config)))
Expand All @@ -18,17 +18,17 @@ $ git config --global alias.st status
----

Це означає, що, наприклад, замість `git commit` ви можете набрати просто `git ci`.
З часом, ви напевно почнете використовувати й інші команди часто. Не вагайтесь створювати нові псевдоніми.
З часом, ви напевно почнете використовувати частіше й інші команди. Не вагайтесь створювати для них нові псевдоніми.

Ця техніка також може бути дуже корисною для створення нових команд, які ви гадаєте мають існувати.
Ця техніка також може бути дуже корисною для створення нових команд, які на вашу думку, мали б існувати.
Наприклад, щоб виправити незручність, яку ми бачили при скасуванні змін до файлу, ви можете додати свою власну команду unstage (видалити з індексу) до Git:

[source,console]
----
$ git config --global alias.unstage 'reset HEAD --'
----

Після цього наступні команди еквівалентні:
Після цього наступні дві команди еквівалентні:

[source,console]
----
Expand All @@ -53,7 +53,7 @@ commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <[email protected]>
Date: Tue Aug 26 19:48:51 2008 +0800
test for current head
Test for current head
Signed-off-by: Scott Chacon <[email protected]>
----
Expand Down
44 changes: 22 additions & 22 deletions book/02-git-basics/sections/getting-a-repository.asc
Original file line number Diff line number Diff line change
@@ -1,32 +1,32 @@
[[_getting_a_repo]]
=== Створення Git-репозиторія
=== Створення Git-сховища

Зазвичай Git репозиторій отримують одним з двох способів:

1. Беруть локальну директорію, що наразі не під контролем версій, та перетворюють її на сховище Git, або
2. Звідкілясь _клонують_ існуючий Git репозиторій.
1. Ви можете взяти локальну директорію, що наразі не під контролем версій, та перетворити її на сховище Git, або
2. Ви можете _клонувати_ існуючий Git репозиторій.

У будь-якому разі ви отримуєте на локальній машині готове до роботи Git сховище.
У будь-якому разі ви отримаєте на локальній машині готове до роботи Git сховище.

==== Ініціалізація репозиторія в існуючому каталозі

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

для Linux:
[source,console]
----
$ cd /home/user/my_project
----
для Mac:
для macOS:
[source,console]
----
$ cd /Users/user/my_project
----
для Windows:
[source,console]
----
$ cd /c/user/my_project
$ cd C:/Users/user/my_project
----

та виконати:
Expand All @@ -36,44 +36,44 @@ $ cd /c/user/my_project
$ git init
----

Це створить новий підкаталог `.git`, який містить всі необхідні файли вашого репозиторія -- скелет Git-репозиторія.
На цей момент, у вашому проекті ще нічого не відстежується.
(Див <<ch10-git-internals#ch10-git-internals>> для отримання додаткової інформації про файли, що містяться в каталозі `.git`, котрий ви щойно створили.)(((git commands, init)))
Це створить новий підкаталог `.git`, який містить всі необхідні файли вашого репозиторія -- основу Git-репозиторія.
Поки у вашому проєкті ще нічого не відстежується.
Див <<ch10-git-internals#ch10-git-internals>> для отримання додаткової інформації про файли, що містяться в каталозі `.git`, який ви щойно створили.(((git commands, init)))

Якщо ви бажаєте додати існуючі файли під версійний контроль (на відміну від порожнього каталогу), ймовірно, вам слід проіндексувати ці файли і зробити перший коміт.
Ви можете це зробити за допомогою декількох команд `git add`, що визначають файли, за якими ви бажаєте слідкувати, після яких треба виконати `git commit`:
Якщо ви бажаєте додати існуючі файли під версійний контроль (на відміну від порожнього каталогу), ймовірно, вам слід почати відстежувати ці файли і зробити початковий коміт.
Ви можете це зробити за допомогою декількох `git add` команд, що визначать файли, які ви плануєте відстежувати. Далі потрібно виконати `git commit`:

[source,console]
----
$ git add *.c
$ git add LICENSE
$ git commit -m 'Перша версія проекту'
$ git commit -m 'Початкова версія проєкту'
----

Ми розповімо що саме роблять ці команди за хвильку.
Наразі, у вас є Git репозиторій з декількома файлами та першим комітом.
Ми розповімо що саме роблять ці команди за хвилину.
Наразі, у вас є Git репозиторій з декількома відстежуваними файлами та першим комітом.

[[_git_cloning]]
==== Клонування існуючого репозиторія

Якщо ви бажаєте отримати копію існуючого Git репозиторія -- наприклад, проекту, в якому ви хочете прийняти участь -- вам потрібна команда `git clone`.
Якщо ви бажаєте отримати копію існуючого Git сховища -- наприклад, проєкту, в якому ви хочете прийняти участь -- вам потрібна команда `git clone`.
Якщо ви знайомі з іншими СКВ, наприклад Subversion, ви помітите, що команда називається "clone" (клонувати), а не "checkout" (перевірити).
Це важлива відмінність -- замість отримання просто робочої копії, Git отримує повну копію майже всіх даних, що є у сервера.
Кожна версія кожного файлу в історії проекту витягується автоматично, коли ви виконуєте `git clone`.
Кожна версія кожного файлу в історії проєкту витягується автоматично, коли ви виконуєте `git clone`.
Насправді, якщо щось станеться з диском вашого серверу, ви зазвичай можете використати майже будь-який з клонів на будь-якому клієнті щоб повернути сервер до стану на момент клонування (ви можете втратити деякі серверні хуки (hook), проте усі дані під контролем версій повернуться – дивіться <<ch04-git-on-the-server#_getting_git_on_a_server>> задля детальнішої інформації).

Щоб клонувати репозиторій треба використати команду `git clone <url>`.(((git commands, clone)))
Наприклад, якщо ви бажаєте зробити клон бібліотеки Git `libgit2`, ви можете це зробити так:
Наприклад, якщо ви бажаєте зробити клон бібліотеки Git `libgit2`, ви можете зробити це так:

[source,console]
----
$ git clone https://github.com/libgit2/libgit2
----

Це створить директорію під назвою `libgit2`, проведе ініціалізацію директорії `.git`, забере всі дані для репозиторія, та приведе директорію до стану останньої версії.
Якщо ви зайдете до щойно створеної директорії `libgit2`, ви побачите, що всі файли проекту на місці, готові для використання.
Це створить теку під назвою `libgit2`, проведе ініціалізацію піддиректорії `.git`, стяне всі дані для цього репозиторія, та приведе директорію до стану останньої версії.
Якщо ви зайдете до щойно створеної директорії `libgit2`, ви побачите, що всі файли проєкту на місці, готові для використання.

Якщо ви бажаєте зробити клон репозиторія в директорію з іншою назвою, ви можете передати її як другий параметр команди:
Якщо ви бажаєте зробити клон репозиторія в директорію з іншою назвою, ви можете передати її як додатковий параметр:

[source,console]
----
Expand Down

0 comments on commit d6bfd53

Please sign in to comment.