@m4tkv

Как перенести изменения с GitHub на сервер?

Я новичок при работе с гитом.
Со своего компа комичу в гитхаб в закрытый репозиторий.
На сервере уже есть этот проект, но он установлен не через Git, а через SSH. На нем очень много возни с правами на папки и все такое.
Как правильно передать изменения с репозитория гитхаб на сервер?
На сервере в папке с проектом:
git init
git remote add origin https://github.com/..........
git pull origin master

Получаю ошибку
* branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
error: The following untracked working tree files would be overwritten by merge:
...
Please move or remove them before you can merge.
Aborting

Я понимаю, что он говорит, что некие файлы будут перезаписаны,я не против, так как это и надо - получить новые файлы.
В общем подскажите как правильно реализовать эту операцию.

Дополнительный вопрос. Хочу, чтобы Git не менял файлы подключения в бд.
Надо добавить на сервере в .gitignore /config/db.php?
Если так сделать, то файл на сервере /config/db.php будет игнорироваться гитом и изменения не будут применяться?
  • Вопрос задан
  • 844 просмотра
Решения вопроса 1
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
git init
# добавить в .gitirnore /config/db.php
git add . # загнать остальные файлы под отслеживание
git commit
git remote add origin https://github.com/..........
# на рабочем компьютере удалить db.php из репозитория
# и никогда больше добавлять такие вещи в репо
git pull origin master # влить изменения с компа
# на этом этапе скорее всего вылезут конфликты
# сможете их разрешить прямо на сервере?
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@mih-kopylov
В целом вы всё делаете правильно.
Похоже, что причина ошибки
error: The following untracked working tree files would be overwritten by merge:
в том, что в папке, где вы инициализировали репозиторий командой git init, уже есть какие-то файлы.
Убедитесь, что в этой папке нет других файлов и папок, кроме .git.
Это можно сделать, например, выполнив команду git status.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы