Инструменты пользователя

Инструменты сайта


learning:git

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
learning:git [02.02.2025 07:10] – [Чистый репозиторий] viacheslavlearning:git [02.02.2025 07:32] (текущий) – [Получение изменений из общего репозитория] viacheslav
Строка 793: Строка 793:
 ==== Получение изменений из общего репозитория ==== ==== Получение изменений из общего репозитория ====
 <code bash> <code bash>
 +# Перейти в репозиторий назначения
 +cd ../home
 +# Добавить чистый репозиторий work.git как shared (так же, как ранее в исходном репозитории work)
 +git remote add shared ../work.git
 +# Отслеживать ветку main в shared
 +git branch --track shared main
 +branch 'shared' set up to track 'main'.
 +# Получить изменения из shared/main
 +git pull shared main
 +remote: Enumerating objects: 5, done.
 +remote: Counting objects: 100% (5/5), done.
 +remote: Compressing objects: 100% (3/3), done.
 +remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 (from 0)
 +Unpacking objects: 100% (3/3), 379 bytes | 27.00 KiB/s, done.
 +From ../work
 + * branch            main       -> FETCH_HEAD
 + * [new branch]      main       -> shared/main
 +Updating 7cc9cfb..576bd94
 +Fast-forward
 + README | 2 +-
 + 1 file changed, 1 insertion(+), 1 deletion(-)
 +</code>
 +Теперь файл README изменился и в home.
  
 +===== Git-сервер =====
 +Git умеет быть и сервером.
 +<code bash>
 +cd ..
 +ls
 +
 +    Каталог: C:\temp\githowto\repositories
 +
 +Mode                 LastWriteTime         Length Name
 +----                 -------------         ------ ----
 +d-----        02.02.2025     10:11                home
 +d-----        26.01.2025     11:59                work
 +d-----        02.02.2025     10:06                work.git
 +
 +
 +# Запуск демона git (добавить --enable=receive-pack, чтобы разрешить push. Внимание: 
 +# сервер не производит аутентификацию, поэтому любой сможет отправлять изменения в ваш репозиторий!)
 +git daemon --verbose --export-all --base-path=.
 +[20528] Ready to rumble
 +# Это появляется позже после подключения клиента
 +[21436] Connection from [::1]:34050
 +[21436] unable to set SO_KEEPALIVE on socket: Input/output error
 +[21436] Extended attribute "host": localhost
 +[21436] Extended attribute "protocol": version=2
 +[21436] Request upload-pack for '/work.git'
 +</code>
 +
 +В другом окне терминала (прошлое занято выполняющимся сервисом):
 +<code bash>
 +cd C:\temp\githowto\repositories
 +# Клонировать work.git с сервера в локальный net_work
 +git clone git://localhost/work.git net_work
 +Cloning into 'net_work'...
 +remote: Enumerating objects: 33, done.
 +remote: Counting objects: 100% (33/33), done.
 +remote: Compressing objects: 100% (25/25), done.
 +remote: Total 33 (delta 4), reused 0 (delta 0), pack-reused 0 (from 0)
 +Receiving objects: 100% (33/33), done.
 +Resolving deltas: 100% (4/4), done.
 +
 +# Файлы появились
 +ls net_work
 +
 +    Каталог: C:\temp\githowto\repositories\net_work
 +
 +Mode                 LastWriteTime         Length Name
 +----                 -------------         ------ ----
 +d-----        02.02.2025     10:22                css
 +-a----        02.02.2025     10:22            295 index.html
 +-a----        02.02.2025     10:22            100 README
 </code> </code>
  
learning/git.1738480224.txt.gz · Последнее изменение: 02.02.2025 07:10 — viacheslav

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki