українська мова ▾ Topics ▾ Latest version ▾ git-remote last updated in 2.45.0

НАЗВА

git-remote - Керування набором відстежуваних репозиторіїв

СИНОПСИС

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>)…​]

ОПИС

Керуйте набором репозиторіїв ("віддалених"), гілки яких ви відстежуєте.

ОПЦІЇ

-v
--verbose

Будьте трохи детальнішими та показуйте URL-адресу віддаленого сервера після імені. Для віддалених серверів-промісників також показуйте, які фільтри (blob:none тощо) налаштовано. ПРИМІТКА. Це потрібно розмістити між remote та підкомандою.

КОМАНДИ

Без аргументів показує список існуючих пультів дистанційного керування. Для виконання операцій на пультах дистанційного керування доступні кілька підкоманд.

add

Додайте віддалений репозиторій з назвою <name> для репозиторію за адресою <URL>. Команду git fetch <name> потім можна використовувати для створення та оновлення гілок віддаленого відстеження <name>/<branch>.

З опцією -f, git fetch <назва> запускається одразу після налаштування віддаленої інформації.

З опцією --tags, git fetch <назва> імпортує кожен тег з віддаленого репозиторію.

З опцією --no-tags, git fetch <назва> не імпортує теги з віддаленого репозиторію.

За замовчуванням імпортуються лише теги на отриманих гілках (див. 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, то git push завжди поводитиметься так, ніби було передано --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, git remote set-head origin -a встановить символічне посилання refs/remotes/origin/HEAD на refs/remotes/origin/next. Це працюватиме лише якщо refs/remotes/origin/next вже існує; якщо ні, його потрібно спочатку отримати.

Використовуйте <branch> для явного встановлення символічного посилання refs/remotes/<name>/HEAD. Наприклад, git remote set-head origin master встановить символічне посилання refs/remotes/origin/HEAD на refs/remotes/origin/master. Це працюватиме, лише якщо refs/remotes/origin/master вже існує; якщо ні, його потрібно спочатку отримати.

set-branches

Змінює список гілок, що відстежуються іменованим віддаленим пристроєм. Це можна використовувати для відстеження підмножини доступних віддалених гілок після початкового налаштування віддаленого пристрою.

Іменовані гілки будуть інтерпретовані так, ніби їх вказано з опцією -t у командному рядку git remote add.

За допомогою --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 віддалені команди не запитуються спочатку за допомогою git ls-remote <назва>; замість цього використовується кешована інформація.

prune

Видаляє застарілі посилання, пов’язані з <name>. За замовчуванням, застарілі гілки віддаленого відстеження під <name> видаляються, але залежно від глобальної конфігурації та конфігурації віддаленого сервера, ми можемо навіть видаляти локальні теги, які не були туди передані. Еквівалентно git fetch --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]