Setup and Config
Getting and Creating Projects
Basic Snapshotting
Branching and Merging
Sharing and Updating Projects
Inspection and Comparison
Patching
Debugging
External Systems
Server Admin
Guides
- gitattributes
- Command-line interface conventions
- Everyday Git
- Frequently Asked Questions (FAQ)
- Glossary
- Hooks
- gitignore
- gitmodules
- Revisions
- Submodules
- Tutorial
- Workflows
- All guides...
Administration
Plumbing Commands
- 2.45.1 → 2.51.1 no changes
-
2.45.0
2024-04-29
- 2.37.1 → 2.44.4 no changes
-
2.37.0
2022-06-27
- 2.36.1 → 2.36.6 no changes
-
2.36.0
2022-04-18
- 2.35.1 → 2.35.8 no changes
-
2.35.0
2022-01-24
- 2.30.1 → 2.34.8 no changes
-
2.30.0
2020-12-27
- 2.29.1 → 2.29.3 no changes
-
2.29.0
2020-10-19
- 2.23.1 → 2.28.1 no changes
-
2.23.0
2019-08-16
- 2.18.1 → 2.22.5 no changes
-
2.18.0
2018-06-21
- 2.17.1 → 2.17.6 no changes
-
2.17.0
2018-04-02
- 2.10.5 → 2.16.6 no changes
-
2.9.5
2017-07-30
- 2.8.6 no changes
-
2.7.6
2017-07-30
-
2.6.7
2017-05-05
- 2.4.12 → 2.5.6 no changes
-
2.3.10
2015-09-28
- 2.1.4 → 2.2.3 no changes
-
2.0.5
2014-12-17
СИНОПСИС
git remote [-v | --verbose] git remote add [-t <branch>] [-m <master>] [-f] [--[no-]tags] [--mirror=(fetch|push)] <name> <URL> git remote rename [--[no-]progress] <old> <new> git remote remove <name> git remote set-head <name> (-a | --auto | -d | --delete | <branch>) git remote set-branches [--add] <name> <branch>… git remote get-url [--push] [--all] <name> git remote set-url [--push] <name> <newurl> [<oldurl>] git remote set-url --add [--push] <name> <newurl> git remote set-url --delete [--push] <name> <URL> git remote [-v | --verbose] show [-n] <name>… git remote prune [-n | --dry-run] <name>… git remote [-v | --verbose] update [-p | --prune] [(<group> | <remote>)…]
КОМАНДИ
Без аргументів показує список існуючих пультів дистанційного керування. Для виконання операцій на пультах дистанційного керування доступні кілька підкоманд.
- add
-
Додайте віддалений репозиторій з назвою <name> для репозиторію за адресою <URL>. Команду
gitfetch<name> потім можна використовувати для створення та оновлення гілок віддаленого відстеження <name>/<branch>.З опцією
-f,gitfetch<назва> запускається одразу після налаштування віддаленої інформації.З опцією
--tags,gitfetch<назва> імпортує кожен тег з віддаленого репозиторію.З опцією
--no-tags,gitfetch<назва> не імпортує теги з віддаленого репозиторію.За замовчуванням імпортуються лише теги на отриманих гілках (див. git-fetch[1]).
З опцією
-t<гілка>, замість глобальної специфікації посилань за замовчуванням для віддаленого комп’ютера, яка відстежує всі гілки в просторі іменrefs/remotes/<назва>/, створюється специфікація посилань для відстеження лише <гілка>. Ви можете надати більше однієї опції-t<гілка> для відстеження кількох гілок без захоплення всіх гілок.З опцією
-m<master> символічне посиланняrefs/remotes/<назва>/HEADвстановлюється так, щоб воно вказувало на гілку віддаленого об’єкта <master>. Див. також команду set-head.Коли дзеркало fetch створюється з параметром
--mirror=fetch, посилання не зберігатимуться в просторі імен refs/remotes/, а все, що знаходиться в refs/ на віддаленому сервері, буде безпосередньо відображено в refs/ у локальному репозиторії. Цей параметр має сенс лише в чистих репозиторіях, оскільки fetch перезапише будь-які локальні коміти.Коли створюється push-дзеркало з
--mirror=push, тоgitpushзавжди поводитиметься так, ніби було передано--mirror. - rename
-
Перейменуйте пульт дистанційного керування з назвою <old> на <new>. Усі гілки відстеження дистанційного керування та параметри конфігурації для нього оновлюються.
Якщо <old> та <new> однакові, а <old> — це файл у
$GIT_DIR/remotesабо$GIT_DIR/branches, віддалений каталог конвертується у формат файлу конфігурації. - remove
- rm
-
Видалити пульт з назвою <назва>. Усі гілки віддаленого відстеження та налаштування конфігурації для пульта видаляються.
- set-head
-
Встановлює або видаляє гілку за замовчуванням (тобто ціль символічного посилання
refs/remotes/<назва>/HEAD) для іменованого віддаленого комп’ютера. Наявність гілки за замовчуванням для віддаленого комп’ютера не є обов’язковою, але дозволяє вказати назву віддаленого комп’ютера замість конкретної гілки. Наприклад, якщо гілка за замовчуванням дляoriginвстановлена наmaster, тодіoriginможна вказати там, де зазвичай вказуютьorigin/master.За допомогою
-dабо--deleteсимволічне посиланняrefs/remotes/<назва>/HEADвидаляється.За допомогою параметрів
-aабо--autoдо віддаленого переменного запитується йогоHEAD, після чого символічне посиланняrefs/remotes/<назва>/HEADвстановлюється на ту саму гілку. Наприклад, якщо віддаленийHEADвказує наnext,gitremoteset-headorigin-aвстановить символічне посиланняrefs/remotes/origin/HEADнаrefs/remotes/origin/next. Це працюватиме лише якщоrefs/remotes/origin/nextвже існує; якщо ні, його потрібно спочатку отримати.Використовуйте <branch> для явного встановлення символічного посилання
refs/remotes/<name>/HEAD. Наприклад,gitremoteset-headoriginmasterвстановить символічне посиланняrefs/remotes/origin/HEADнаrefs/remotes/origin/master. Це працюватиме, лише якщоrefs/remotes/origin/masterвже існує; якщо ні, його потрібно спочатку отримати. - set-branches
-
Змінює список гілок, що відстежуються іменованим віддаленим пристроєм. Це можна використовувати для відстеження підмножини доступних віддалених гілок після початкового налаштування віддаленого пристрою.
Іменовані гілки будуть інтерпретовані так, ніби їх вказано з опцією
-tу командному рядкуgitremoteadd.За допомогою
--add, замість заміни списку гілок, що наразі відстежуються, виконується додавання до цього списку. - get-url
-
Отримує URL-адреси для віддаленого пристрою. Тут розгорнуто конфігурації для
insteadOfтаpushInsteadOf. За замовчуванням відображається лише перша URL-адреса.З
--pushзапитуються push-URL-адреси, а не URL-адреси для отримання.З параметром
--allбуде перераховано всі URL-адреси віддаленого комп’ютера. - set-url
-
Змінює URL-адреси для віддаленого пристрою. Встановлює першу URL-адресу для віддаленого пристрою <name>, яка відповідає регулярному виразу <oldurl> (першу URL-адресу, якщо <oldurl> не вказано), як <newurl>. Якщо <oldurl> не відповідає жодній URL-адресі, виникає помилка, і нічого не змінюється.
За допомогою
--pushманіпулюють URL-адреси push, а не URL-адреси отримання.За допомогою параметра
--addзамість зміни існуючих URL-адрес додається нова URL-адреса.З параметром
--delete, замість зміни існуючих URL-адрес, усі URL-адреси, що відповідають регулярному виразу <URL>, видаляються для віддаленого <name>. Спроба видалити всі URL-адреси, що не є push-адресами, призводить до помилки.Зверніть увагу, що URL-адреса для відправлення та URL-адреса для отримання, навіть якщо їх можна встановити по-різному, все одно повинні посилатися на одне й те саме місце. Те, що ви відправили на URL-адресу для відправлення, має бути тим, що ви побачите, якщо одразу ж отримаєте дані з URL-адреси для отримання. Якщо ви намагаєтеся отримати дані з одного місця (наприклад, з вашого основного ресурсу) та відправити їх до іншого (наприклад, з вашого репозиторію публікацій), використовуйте два окремих віддалених пристрої.
- show
-
Надає деяку інформацію про віддалений <ім’я>.
З опцією
-nвіддалені команди не запитуються спочатку за допомогоюgitls-remote<назва>; замість цього використовується кешована інформація. - prune
-
Видаляє застарілі посилання, пов’язані з <name>. За замовчуванням, застарілі гілки віддаленого відстеження під <name> видаляються, але залежно від глобальної конфігурації та конфігурації віддаленого сервера, ми можемо навіть видаляти локальні теги, які не були туди передані. Еквівалентно
gitfetch--prune<name>, за винятком того, що нові посилання не будуть отримані.Дивіться розділ PRUNING у git-fetch[1], щоб дізнатися, що саме буде обрізано залежно від різних налаштувань.
З опцією
--dry-runповідомляти, які гілки будуть обрізані, але насправді їх не обрізати. - update
-
Отримати оновлення для віддалених серверів або віддалених груп у репозиторії, як визначено в
remotes.<group>. Якщо в командному рядку не вказано ні group, ні remote, буде використано параметр конфігурації remotes.default; якщо remotes.default не визначено, будуть оновлені всі віддалені сервери, для яких параметр конфігураціїremote.<name>.skipDefaultUpdateне встановлено на true. (Див. git-config[1]).З опцією
--pruneвиконати обрізання для всіх оновлених віддалених серверів.
ОБГОВОРЕННЯ
Віддалене налаштування здійснюється за допомогою змінних конфігурації remote.origin.url та remote.origin.fetch. (Див. git-config[1]).
СТАТУС ВИХОДУ
У разі успіху, статус виходу буде 0.
Коли підкоманди, такі як «add», «rename» та «remove», не можуть знайти потрібний пульт, код виходу буде 2. Якщо пульт вже існує, код виходу буде 3.
У разі будь-якої іншої помилки, статус виходу може бути будь-яким іншим ненульовим значенням.
ПРИКЛАДИ
-
Додати новий віддалений сервер, отримати дані та отримати доступ до гілки
$ git remote origin $ git branch -r origin/HEAD -> origin/master origin/master $ git remote add staging git://git.kernel.org/.../gregkh/staging.git $ git remote origin staging $ git fetch staging ... Від git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging * [new branch] master -> staging/master * [new branch] staging-linus -> staging/staging-linus * [new branch] staging-next -> staging/staging-next $ git branch -r origin/HEAD -> origin/master origin/master staging/master staging/staging-linus staging/staging-next $ git switch -c staging staging/master ...
-
Імітувати «клон git», але відстежувати лише вибрані гілки
$ mkdir project.git $ cd project.git $ git init $ git remote add -f -t master -m master origin git://example.com/git.git/ $ git merge origin
GIT
Частина набору git[1]