Как вытащить git-репо из github со всеми несвязанными коммитами


13

Мне интересно, как получить репо со всеми коммитами, которые не были gc'd, если это возможно ..

это что-то вроде:

$ git clone x
$ cd x
$ git fetch origin -f

? или что-то другое?


Что вы пытаетесь достичь? Может быть, если мы знаем, зачем вам это нужно, мы можем дать вам лучший ответ. Обычно владелец удаленного репозитория ссылается на коммиты, которые он хочет получить. Висячие коммиты, которые не были gc'd, рискуют быть потерянными в любое время.
Стивен Дженнингс

Ответы:


5

Я не знаю ни одной команды, которая бы говорила: «Снять все объекты коммитов в удаленном репозитории, даже те, на которые нет ссылок».

Вы можете принести коммиты только со ссылкой в ​​удаленном хранилище. Вы можете сделать это с помощью команды:

git fetch [remote] [remoteBranch]:[localBranch]

Удаленный репозиторий должен будет создать ссылку на любые висячие коммиты, прежде чем вы сможете получить их. Если у вас есть доступ к удаленному репозиторию, вы можете сделать это с помощью команды:

git fsck --lost-found

Вывод покажет вам любые висячие коммиты. Дайте им ссылку git branch [branchname] [commit sha1], чтобы вы могли получить их.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.