Настройка хранилища git на локальной машине

Как настроить репозиторий git в локальной системе? (Я нахожусь в коробке с ветром)

Это настройка, которую я пытаюсь достичь: (все на моей локальной машине)

  • папка хоста (которая действует как центральный репозиторий)
  • папка клиента

Я хочу сделать все мои dev в папке клиента. Как только я закончил, я хотел бы нажать его в папку хоста.


Это то, что я сделал: (используя git bash в окнах)

  • cd d:/adinsert
  • хост mkdir
    • cd host
    • git init

cd c:/

  • Клиент mkdir
    • cd client
    • git init
    • git удаленный добавочный источник d:/host // Добавлены некоторые файлы в папку клиента и совершены с ними.
    • git нажмите начало оригинала

Когда я выталкиваю материал в исходное состояние, git содержит много удаленных ошибок. Однако, когда я делаю мой хост открытым git, он успешно продвигается.

Я не понимаю разницы между регулярными git и голыми git. Из руководства все, что я понял, было голым git используется для хранения дельт и когда вы не хотите хранить оригинальные файлы. Тем не менее, я хотел бы сохранить файлы в хосте. Как я могу это сделать?

Ответ 1

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

Если вы хотите иметь "хост", где появляются копии ваших файлов, тогда настройте третий репозиторий, клонирующий из хоста. Всякий раз, когда вы хотите обновить файлы хоста:

  • git push из вашего рабочего каталога для обновления основного репозитория
  • git pull из вашего каталога хоста, чтобы извлечь из источника

Вы даже можете настроить привязку после фиксации в голом репозитории для автоматического выполнения второго шага.

Ответ 2

В вашем каталоге client вы увидите каталог .git. Версия bare - это просто содержимое каталога .git без рабочей копии.

Проще всего было бы клонировать его (против попытки установить другой репозиторий):

От c:/call:

git clone d:/host client

Это говорит о клонировании репозитория "хозяина" и сохраняет его под папкой "клиент".

Ответ 3

Не создавайте новый репозиторий git в папке клиента, клонируйте репозиторий-хост

cd client
git clone d:/adinsert/host