Ответы пользователя по тегу Git
  • Как спрятать файлы через 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 комментария