Ответы пользователя по тегу Git
  • Как разрешить merge конфликт?

    vhood
    @vhood
    Не забывайте отмечать решения
    Правильно ли я понимаю, что будет нечто:
    Да

    git merge master
    После этой команды нужно будет решить конфликты в файлах

    git add .
    После этой команды нужно будет сделать коммит

    spoiler
    git checkout master
    git pull origin
    Это не обязательно, можно сразу:
    git checkout branch-b
    git pull
    git merge origin/master
    Ответ написан
    Комментировать
  • Как устроена команда git push?

    vhood
    @vhood
    Не забывайте отмечать решения
    Как устроена команда git push?
    вот так

    Можете дать подобное описание для git push?
    А что не так с описанием?

    git push отправляет данные в удаленный репозиторий...
    Ответ написан
    Комментировать
  • Как спрятать файлы через gitignore, чтобы заходя в мой репозиторий не видели файлы проекта но могли открыть проект (сайт) по ссылке?

    vhood
    @vhood
    Не забывайте отмечать решения
    Поскольку файлы уже отслеживались и есть в git, недостаточно добавить их в .gitignore, помимо этого нужно удалить их из git

    git rm --cached index.html

    Если сайт хостится через GitHub Pages, то как раз index.html из репозитория и считывается для этого. Если удалить index.html, никакой сайт никто не увидит. Хотите сделать сайт с закрытым кодом - храните код в приватном репозитории и показывайте через платный хостинг.
    Ответ написан
    3 комментария
  • Как исправить HEAD detached?

    vhood
    @vhood
    Не забывайте отмечать решения
    Он перешёл на предпоследнюю ветку и не удаляя последнюю, закоммитился
    что еще за "последние" и "предпоследние" ветки, какие-то новые понятия в git?

    Как соединить коммиты и исправить ситуацию?
    в ветке main сделать (на выбор):
    • git reset --hard origin/main, тогда main станет соответстовать origin/main, но коммиты e32d4e8 и 690c2b9 пропадут, но не из истории, так что их можно будет подтянуть: git cherry-pick e32d4e8, git cherry-pick 690c2b9
    • git reset --soft origin/main, посмотреть git status и сделать новые коммиты
    • git rebase origin/main, тогда коммиты e32d4e8 и 690c2b9 начнут применяться заново, начиная с коммита 69805c1 (в ходе применения могут возникать конфликты, а так же у применяемых коммитов будет новый хэш)
    • git rebase -i origin/main (интерактивный ребейз), почти то же самое, как предыдущее, но сначала откроется текстовый редактор (который в git указан как редактор по умолчанию) и в нем можно будет указать как именно делать ребейз, например можно будет не переность коммит 690c2b9 или изменить сообщение коммита
    Ответ написан
    2 комментария
  • Как выполнить команды гита для вложенного репозитория?

    vhood
    @vhood
    Не забывайте отмечать решения
    Если project тоже является проектом, у которого должен быть свой репозиторий, то вложенные проекты нужно добавить в .gitignore
    /server/
    /client/
    /db/

    Если вложенные папки уже отслеживаются гитом, нужно так же удалить их для гита
    git rm -r --cached server
    git rm -r --cached client
    git rm -r --cached db
    
    git add .
    Ответ написан
    Комментировать
  • Как переместить скопировать удаленный репозиторий в другой удаленный репозиторий?

    vhood
    @vhood
    Не забывайте отмечать решения
    1. Клонируешь проект из исходного репозитория

    git clone <ссылка на старый>

    2. Переходишь в склонированный репозиторий и добавляешь новый удаленный репозиторий

    git remote add copy <ссылка на новый>

    3, Пушишь коммиты в новый репозиторий (выше в команде я назвал его copy)

    git push --all copy
    Ответ написан
    Комментировать
  • Почему не получается сразу получить актуальную версию?

    vhood
    @vhood
    Не забывайте отмечать решения
    git pull

    подтягиваю на сервер актуальную версию git fetch origin master
    только информацию об этой версии
    Ответ написан
    4 комментария