Как выполнить форк в собственном репозитории GIT

Я разместил Smart HTTP GIT на моей виртуальной машине я не могу создать вилку. Есть ли какая-нибудь команда или что-то, с помощью чего я могу форкнуть свой собственный GIT.

Зачем мне форк репозитория, чтобы 10 разработчиков могли форкнуть базовый репозиторий и работать над своим собственным экземпляром, когда их код будет готов, они могут сделать запрос на вытягивание. После того, как они сделали запрос на вытягивание, администратор GIT может проверить и просмотреть код, и если все будет в порядке, он будет принят, иначе он будет отклонен.

Примечание: я не спрашиваю, как выполнить форк, я спрашиваю, как выполнить форк на собственном репозитории GIT, который представляет собой не что иное, как мой удаленный репозиторий GIT, который находится на одной из моих виртуальных машин / серверов, а не на Github / Bitbucket и т. Д.


person Rishi Kulshreshtha    schedule 12.01.2016    source источник
comment
Форк - это просто клон репо. См. Являются ли вилки git клонами git?. См. Конкретно ответ Мегара.   -  person Aaron Brager    schedule 12.01.2016
comment
Хорошо, но мне нужно использовать функцию fork в моем собственном репозитории GIT, возможно ли это? Если да, то как?   -  person Rishi Kulshreshtha    schedule 12.01.2016
comment
Вы в основном спрашиваете нас, как использовать Git. Можете ли вы сузить свой вопрос?   -  person Tim Biegeleisen    schedule 12.01.2016
comment
@TimBiegeleisen, я обновил вопрос, надеюсь, что это поможет прояснить мою проблему.   -  person Rishi Kulshreshtha    schedule 12.01.2016
comment
Для этого обычно используется ветвление. Обычно релиз-кандидат создается из ветки с именем master или другого имени, передающего номер версии. Разработчики или группы разработчиков создают свои собственные ветки и извлекают / извлекают из них, пока они не будут готовы к слиянию с основной веткой. На этом этапе происходит надлежащая проверка. При работе над боковой ветвью разработчикам необходимо время от времени объединять главную ветвь с боковой, чтобы поддерживать ее в актуальном состоянии.   -  person Adi Levin    schedule 12.01.2016
comment
Форки и запросы на вытягивание не являются особенностями Git. Если у вас нет слоя, который реализует эти функции, вам нужно управлять потоком вручную. Это не очень сложно или впечатляюще, поэтому все еще трудно понять, почему ваш вопрос не касается того, как обрабатывать клоны Git.   -  person tripleee    schedule 12.01.2016


Ответы (1)


В Git нет «форка», только клон на стороне сервера (но без какой-либо «связи» между двумя репозиториями)

После того, как вы скопировали репо на стороне сервера («вилка»), любой запрос на вытягивание можно эмулировать с помощью собственной команды «_ 1_ ".

Сгенерируйте запрос, предлагающий вашему вышестоящему проекту внести изменения в свое дерево.
Запрос, выводимый на стандартный вывод, начинается с описания ветви, суммирует изменения и указывает, откуда они могут быть извлечены.

См. «Как отправить запрос на перенос в GIT».

person VonC    schedule 12.01.2016
comment
В общем, я должен вручную клонировать чистый репозиторий GIT на стороне сервера, а затем рассматривать этот репозиторий как разветвленный, что не является особенностью GIT, но так мы сможем этого добиться? - person Rishi Kulshreshtha; 12.01.2016
comment
@RishiKulshreshtha да: любой клон чистого репо на стороне сервера можно рассматривать как форк. Но суть остается в силе: между двумя репозиториями нет ни хорошей интеграции, ни приятного интерфейса для запроса на вытягивание с собственным git. - person VonC; 12.01.2016
comment
Спасибо за ясность @VonC :-) - person Rishi Kulshreshtha; 12.01.2016
comment
только клон на стороне сервера - clone --bare или clone --mirror или что-то еще? - person theonlygusti; 25.09.2019
comment
@theonlygusti зеркало, но детали хранения / доступа остаются специфичными для операционной среды GitHub. (как описано в github.blog/2016-09-22-introduction-glb) - person VonC; 25.09.2019
comment
@VonC, если я хочу разместить свой форк, можно просто git clone --mirror <github-url> - person theonlygusti; 25.09.2019