Ошибка «Fatal: destination path '.' already exists and is not an empty directory»
Описание и решение ошибки «Fatal: destination path '.' already exists and is not an empty directory» при выполнении команды git clone.
Давайте представим что мы хотим клонировать репозиторий с Git в текущую директорию проекта, делается это, путем указания точки в конце команды. В директории могут находится скрытые файлы и папки. Например .idea
от phpStorm. В этом случае, мы получим ошибку:
Fatal: destination path '.' already exists and is not an empty directory
В таком случае, нужно будет полностью очистить директорию, куда вы клонируете репозиторий, а это приведет к определенным проблемам. Например если удалить директорию .idea
, то мы удалим все настройки проекта в phpStorm.
Для того, чтобы избежать подобного рода проблем, находясь в нужной директории, можно воспользоваться следующим набором команд:
git init .
git remote add -f origin <repository-url>
git checkout <branch-name>
Описание того, что мы делаем:
- Инициализируем пустой репозиторий в директории.
- Добавляем удаленный репозиторий (вместо
<repository-url>
, укажите путь до репозитория). - Выбираем ветку с которой хотим работать.
В итоге Git сам обновит тот новосозданный нами репозиторий, в соответствии с удаленным, который мы указали во второй команде. Ну, а последней командой, мы просто укажем Git с какой веткой хотим работать и он подтянет версию проекта из этой ветки.
Вот такое альтернативное решение клонирования репозитория в текущую директорию, даже если она не пуста.
Время запросов: 0,1077 s
Количество запросов: 28
Источник: cache