Это странный рабочий процесс и не очень полезен в целом. Его основная особенность - использование своеобразного ссылочного пространства имен, обрабатывающего refs/data/val
, как если бы это было название ветки.
Эффект как клонирования с --single-branch
, за исключением того, что вместо этого он клонирует с не ветви, а затем обрабатывает забавный реф, как если бы это были филиал.
Шаг git checkout
производит отдельно стоящую головку.
Последующая фиксация совершает новую фиксацию, которая расширяет выделенную головку.
Окончательный git push
обновляет другой Git, продолжая рассматривать названную ссылку как ветку. Другой Git может отказаться от толчка. Многие/большинство выполняли бы просто потому, что refs/data/
не является надежным пространством имен для push.
Поскольку нет имени именованного пульта дистанционного управления, имена ветви удаленного не могут храниться локально для удобства слияния и/или перезагрузки. Поскольку нет названных ветвей, встроенное поведение Git не может использоваться для удобства совершения, слияния и/или перезагрузки. Поскольку не существует ни названных ветвей, ни именованного пульта, нельзя использовать встроенное поведение push
Git, требующее полного URL-адреса и HEAD
-to-ref.
Короче говоря, это неудобный способ использования Git нетрадиционно.
Нет, это не дубликат. – Nemo
Возможный дубликат: http://stackoverflow.com/questions/292357/what-are-the-differences-between-git-pull-and-git-fetch –
Возможный дубликат [Как получить только одну ветвь удаленный git-репозиторий?] (http://stackoverflow.com/questions/6368987/how-do-i-fetch-only-one-branch-of-a-remote-git-repository) – Joe