git извлечь в другой файл - PullRequest
0 голосов
/ 02 ноября 2019

Я пытаюсь загрузить файлы моего сайта в папку public_html. Но когда я делаю git init, он генерирует другие файлы, которые я не хочу иметь в корне моего сайта.

Я пытался:

git init
git remote add origin [GIT_URL]
git fetch origin

Но получил только файлы Gitв папке public_html (ветви, хуки, информация и т. д.).

Я также пробовал git init --separate-git-dir=<git dir>, но также получал тот же результат. Он создал файл с текстом gitdir: /path/to/git/folders.

Есть ли способ создать репозиторий Git в родительской папке папки public_html, но фактические файлы в папке, отличной от public_htmlпапка?

Прошел несколько уроков по Git, и они всегда показывают, как работать с вновь созданной папкой, а не с существующей (в моем случае public_html).

1 Ответ

0 голосов
/ 02 ноября 2019

tl; др : используйте git clone [GIT_URL].


Вы только что загрузили удаленный репозиторий в свой новый локальный, но у вас нетНе объединяйте их в своем местном филиале. Давайте рассмотрим команды.

  • git init

Создайте пустой локальный репозиторий в текущем каталоге. Он находится в .git/.

  • git remote add origin GIT_URL

Присоедините GIT_URL в качестве удаленного хранилища с именем origin.

  • git fetch origin

Извлеките удаленный репозиторий origin и сделайте ветви удаленного отслеживания, такие как origin/master.

На данный момент вы загрузили удаленный репозиторий, но выосталось только с каталогом .git. Вам необходимо объединить origin/master с вашим местным master филиалом.

  • git checkout master, если еще не оформлен
  • git merge origin/master

Теперь ваш master соответствует удаленному master и извлечен. Теперь вы должны увидеть .git (хранилище) и все, что находится в вашем хранилище.

git clone [GIT_URL] выполняет все вышеперечисленное за один шаг. Он инициализирует новый репозиторий, добавляет GIT_URL в качестве удаленного источника, извлекает источник, извлекает master и объединяет origin/master в master.


Теперь настройте свой веб-сервер так, чтобы запретить доступ клюбой каталог .git.

Git не является инструментом развертывания, но вы можете использовать его для очень маленьких проектов. Лучшим простым решением было бы использовать инструмент, такой как rsync, для отправки вашего кода (пропуская .git) на рабочий сервер.

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