Как раскошелиться на git-проект только по каталогу .git? - PullRequest
1 голос
/ 22 августа 2009

Итак, в Интернете есть парень, который написал тонну кода и сохранил все это на github. Однажды, сказал парень, просто встал и исчез, удалив все свои репозитории. К счастью, было много вилок его основных проектов, но все же было много небольших репо, которые не были раздвоены. Однако мне удалось использовать API Github для периодического снятия репозиториев этого парня и, следовательно, для получения копии всех вышеупомянутых «небольших проектов». Однако есть одна проблема: у меня есть содержимое каталогов .git отдельного репозитория.

Мне неясно, как использовать эти .git dirs для их эффективного разветвления, создавая таким образом довольно полные зеркала их соответствующих репозиториев.

Любое руководство?

-m

Ответы [ 4 ]

9 голосов
/ 22 августа 2009

man git?

просто используйте git clone git://domain.tld/path/to/repos.git

6 голосов
/ 22 августа 2009

Вы пробовали:

git clone /path/to/repo.git repo
2 голосов
/ 22 августа 2009

Если вы хотите создать только зеркало, вы можете просто cp -R каталог .git.

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

Если вы говорите о _why, то есть парень, который ведет учетную запись, называемую Whymirror (http://github.com/whymirror)), который, вероятно, оценит эти репозитории. Способ получить клон на github будет:

  1. Создание репо на github
  2. Зайдите в локальный репозиторий, используйте git remote add github git@xxx, чтобы добавить адрес github в свой клон
  3. Используйте git push -f github, чтобы отправить точную копию вашего репо на github.
1 голос
/ 25 августа 2009

Используемый URL-адрес зависит от того, есть ли у вас репо или нет. Перейдите в каталог, где находится ваш репо и ls. Если вы видите:

HEAD        branches/   description index       logs/       packed-refs svn/
ORIG_HEAD   config      hooks/      info/       objects/    refs/

У вас есть репо. Если вместо этого вы просто видите каталог .git, то нет.

Если у вас есть репо, URL-адрес file://path/to/repo будет искать /path/to/repo.git (по крайней мере, по моему опыту).

Если у вас нет чистого репо, вы можете использовать путь к директории , содержащей каталог .git

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...