Могу ли я отправить более чем в один репозиторий с помощью одной команды в git?

В принципе хотел сделать что-то вроде git push mybranch to repo1, repo2, repo3

Мне просто интересно, поддерживает ли git то, что я хочу сделать, или, может быть, есть умный скрипт, или, может быть, способ отредактировать файл конфигурации локального репо, чтобы сказать, что ветка должна быть перенесена на несколько пультов дистанционного управления.

Асинхронная передача данных с помощью sendBeacon в JavaScript
Асинхронная передача данных с помощью sendBeacon в JavaScript
В современных веб-приложениях отправка данных из JavaScript на стороне клиента на сервер является распространенной задачей. Одним из популярных...
Как подобрать выигрышные акции с помощью анализа и визуализации на Python
Как подобрать выигрышные акции с помощью анализа и визуализации на Python
Отказ от ответственности: Эта статья предназначена только для демонстрации и не должна использоваться в качестве инвестиционного совета.
Принципы ООП в JavaScript
Принципы ООП в JavaScript
Парадигма объектно-ориентированного программирования имеет 4 основных принципа,
Пройдите собеседование по Angular: Общие вопросы и ответы экспертов
Пройдите собеседование по Angular: Общие вопросы и ответы экспертов
Можете ли вы объяснить разницу между ngOnInit и конструктором в Angular?
Laravel с Turbo JS
Laravel с Turbo JS
Turbo - это библиотека JavaScript для упрощения создания быстрых и высокоинтерактивных веб-приложений. Она работает с помощью техники под названием...
Типы ввода HTML: Лучшие практики и советы
Типы ввода HTML: Лучшие практики и советы
HTML, или HyperText Markup Language , является стандартным языком разметки, используемым для создания веб-страниц. Типы ввода HTML - это различные...
41
0
6 974
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

У меня есть единственный пустой репозиторий, который живет в моем домашнем каталоге, в который я нажимаю. Хук post-update в этом репозитории затем подталкивает или выполняет синхронизацию с несколькими другими общедоступными местоположениями.

Вот мои хуки / пост-обновление:

#!/bin/sh
#
# An example hook script to prepare a packed repository for use over
# dumb transports.
#
# To enable this hook, make this file executable by "chmod +x post-update".

# Update static info that will be used by git clients accessing
# the git directory over HTTP rather than the git protocol.
git-update-server-info

# Copy git repository files to my web server for HTTP serving.
rsync -av --delete -e ssh /home/afranco/repositories/public/ afranco@slug.middlebury.edu:/srv/www/htdocs/git/

# Upload to github
git-push --mirror github 

Это хорошо. хотите поделиться или объяснить git-update-server-info?

kch 03.10.2008 04:00

Как я добавил к ответу: git-update-server-info записывает некоторые файлы статической информации, которые будут использоваться клиентами git, обращающимися к каталогу git через HTTP, а не по протоколу git. Для получения дополнительной информации см. Следующее: kernel.org/pub/software/scm/git/docs/…

Adam Franco 04.10.2008 02:03
Ответ принят как подходящий

У вас может быть несколько URL-адресов для каждого пульта в git, даже если команда git remote, похоже, не раскрывает последний, который я проверял. В .git/config поставьте что-то вроде этого:

[remote "public"]
    url = git@github.com:kch/inheritable_templates.git
    url = kch@homeserver:projects/inheritable_templates.git

Теперь вы можете сказать «git push public», чтобы отправить сразу в оба репозитория.

Хороший совет. Обратите внимание, это работает только для push. Для получения, похоже, просто используется первая запись URL-адреса. Также кажется, что вы можете настроить таргетинг на ветку на этом мульти-пульте. Таким образом, вы можете просто выполнить "git pull" без удаленного имени, если вы добавите что-то подобное в свою конфигурацию [branch "master"] remote = public

studgeek 09.03.2012 10:50

Спасибо, спасает мне жизнь!

Michal Rus 16.08.2013 15:09

Другие вопросы по теме