Git: загрузка с github на развернутый сервер - PullRequest
0 голосов
/ 09 мая 2018

Проект был разработан на локальном компьютере, после чего команда git push отправляет изменения в github. После этого командный проект git clone был развернут на сервере. Все работало Теперь я сделал новые изменения на локальном компьютере, скопировал их в gitgub и хочу отправить их на рабочий сервер. Снова делаем

git clone https://github.com/myaccount/site

И я получаю ошибку

fatal: destination path 'vtoday' already exists and is not an empty directory

Какую команду мне использовать?

UPD

После git pull я получил ошибку

error: Your local changes to the following files would be overwritten by merge:
    album/api/serializers.py
    album/api/urls.py
    album/api/views.py
    customuser/models.py
    entertainment/forms.py
    places/models.py
    places/urls.py
    places/views.py
    templates/places/places_list.html
    templates/vtv/video.html
    vtoday/settings/base.py
    vtoday/urls.py
    vtv/models.py
    vtv/urls.py
    vtv/views.py
Please commit your changes or stash them before you merge.
error: The following untracked working tree files would be overwritten by merge:
    entertainment/migrations/0012_remove_entertainment_main_photo.py
    media/places/pexels-photo-373965.jpeg
    places/api/__init__.py
    places/api/serializers.py
    places/api/urls.py
    places/api/views.py
    places/filters.py
Please move or remove them before you merge.
Aborting

Ответы [ 2 ]

0 голосов
/ 09 мая 2018

Чтобы получить изменения от вашего пульта дистанционного управления (в вашем случае github), вы должны использовать git pull. Другой вариант описан здесь Клонирование выполняется только один раз для каждой копии репо.

Далее: если файлы изменяются на вашем пульте и в локальной файловой системе, это приводит к конфликту. Если вы хотите сохранить свои локальные изменения без их фиксации, вы можете использовать:

git stash
git pull
git stash pop

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

git commit --all -m "My Message"
git pull

Если вы просто хотите выбросить свои локальные изменения, просто используйте:

git reset --hard

Но могут быть неотслеживаемые изменения (файлы, которых в данный момент нет в вашем репо), которые можно удалить:

git clean -fd 

Если возможно, git автоматически объединит эти изменения, но это может привести к слиянию вручную, что означает, что вы должны указать git, какую «версию» вы хотите сохранить.

0 голосов
/ 09 мая 2018

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

Тем не менее, чтобы получить изменения, необходимые для использования команды pull, вам не нужно снова клонировать репозиторий, а также сначала нужно зафиксировать существующие изменения, чтобы объединить их с теми, которые вы извлечете. с сервера:

git add . --all
git commit -m "Add a description"
git pull

Если у вас нет конфликтов, ваши файлы будут объединены автоматически.

Затем отправьте все на удаленный сервер:

git push

См. Этот вопрос для других опций: Как мне разрешить git, сказав "Зафиксируйте свои изменения или спрячьте их, прежде чем вы сможете объединить"?

Редактировать

У вас есть проблема слияния:

Автоматическое слияние развлечения / Миграция / 0012_remove_entertainment_main_photo.py КОНФЛИКТ (добавить / добавить): конфликт слияния в развлечения / Миграция / 0012_remove_entertainment_main_photo.py Автоматическое объединение не выполнено; исправить конфликты и зафиксировать результат

Это означает, что оба хранилища изменили одни и те же части файла 0012_remove_entertainment_main_photo.py

Если вы просто хотите сохранить файл на сервере, просто введите следующую команду:

git reset entertainment/migrations/0012_remove_entertainment_main_photo.py

Это удалит все изменения, внесенные вами в этот файл в вашем локальном хранилище

Если вы хотите объединить файлы вручную, взгляните на этот вопрос Как разрешить конфликты слияния в Git?

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