Страницы

Поиск по вопросам

пятница, 24 января 2020 г.

работа с Git и GitHub объединение веток

#git #github


В общем есть сайт на отдельном хостинге на котором идут доработки и рабочий сайт
на другом хосте, в обоих случаях на хостинге установлен git.

Кода подрубаешься по ssh  к тестовому сайту то командой git branch я вижу что нахожусь
в нужной мне ветке в которой идут доработки, после того как я закончил с правками делаю
коммиты, далее git push origin my_test_branch. 

После захожу в аккаунт на GitHub и как я понял нужно сравнить ветки, за это отвечает
кнопка Pull requests показываются так понимаю все файлы которые затронуты и конфликты
с веткой master
далее так понимаю я объединяю ветки кнопкой merge пишется что то вроде слияние успешно
конфликтов нет, но тут вопрос, как теперь увидеть изменения на рабочем сайте?

Нужно зайти по SSH и выполнить какие то команды git ? если набрать git branch я не
вижу там своей ветки это потому что не я создавал на хостинге репозиторий?

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


Ответы

Ответ 1



самый простой воркфлоу для одиночки: идете на хостинг по ssh, в настройках вебсервера запрещаете доступ к папке .git, либо инициализируете репозиторий на уровень выше (чтобы директория была недоступна клиентам через браузер) git init && git add . && git commit -m "init" на локальном компьютере - git clone ssh://хостинг/путь/к/каталогу/c/.git/ делаете изменения, потом git add . && git commit -m "changes" && git push остальные репозитории добавляете как git remote add upstream путь_к_гитхабу_или_другому_компу основной сайт у вас будет по дефолту ремоутом с именем origin, для других ремоутов имена сами выбираете. допустим, кто-то изменил код на гитхабе: вы делаете на локальном компьютере: git fetch upstream # вытянули изменения с гитхаба git merge upstream/имя_ветки_с_изменениями # смерджили в текущую ветку изменения c апстрима (гитхаб) если мердж прошел с конфликтами - правите ручками. либо ставьте git difftool (meld, и т.д.) / или intellijidea, где мердж идеальный git push origin # пушите изменения на хостинг, при желании, конечно, вы можете добавить прямо на хостинге апстрим github и пулить изменения прямо с него. на практике это неудобно и к тому же, вместо двух актуальных копий кода сайта (у вас и на хостинге) вы только одну имеете (на хостинге) остальное гуглите

Комментариев нет:

Отправить комментарий