Не совсем, нет, но см. Шаг 4. ниже.
Команда git clone
, по модулю несколько особых угловых вопросов, эквивалентна:
mkdir <em>target</em>
,где target получается из URL, который вы клонируете (и пропускается, если вы даете git clone
имя существующего пустого каталога).Последующие операции выполняются внутри целевого каталога. git init
git remote add <em>remote url</em>
.remote
здесь по умолчанию origin
, но вы можете указать другое имя. - Дополнительные команды
git config
, если они указаны в командной строке (-c
или --config
)). git fetch <em>remote</em>
. git checkout <em>branch</em>
, где branch
- это тот, который вы указали в командной строке, или тот, который был направлен Git изкакой шаг 4 выбран.
Встроенный пульт ДУ, origin
по умолчанию, конфигурируется с помощью эквивалента git remote add
, но это эквивалентно:
git config remote.<remote>.url <url>
git config remote.<remote>.fetch '+refs/heads/*:refs/remotes/<remote>/*'
(где угловые элементы заменяются очевидным образом).
Это означает, что если вы можете убедить людей бежать:
git clone \
-c remote.abc.url=ssh://example.com/path/to/abc.git \
-c remote.abc.fetch='+refs/heads/*:refs/remotes/abc/*' \
ssh://example.com/path/to/repo.git
(вместо просто git clone ssh://example.com/path/to/repo.git
), тогда они будут иметь настроенный abc
пульт.Но это зависит от людей, управляющих git clone
: ваш repo.git
не может напрямую влиять на их .git/config
таким же образом.