Project-Euler-CSS - это CSS-настройки для моего блога Project-Euler-Blog. Выделение CSS-настроек в отдельный репозиторий позволяет использовать их повторно в разных проектах и избавляет от необходимости вносить одни и те же изменения в каждый проект.
Чтобы подключить репозиторий project-euler-css, как Git-подмодуль репозитория project-euler-blog нужно зайти в проект...
project-euler-blog/ └── index.html
И ввести команду:
Структура после добавления связанного репозитория:
project-euler-blog/ ├── src/ │ └── styles/ # Это связанный репозиторий │ └── main.css ├── index.html └── .gitmodules
В HTML файл проекта (index.html) необходимо добавить ссылку на файл внутри подмодуля (main.css):
При клонировании репозитория необходимо использовать флаг --recursive:
Иначе при обычном клонировании папка src/styles будет пустой:
git clone https://github.com/AlexandrAnatoliev/project-euler-blog.git cd project-euler-blog ls src/styles/ # пусто или не существует
В этом случае нужно инициализировать и обновить подмодули:
git submodule init git submodule update
Перейти в папку подмодуля:
Обновиться до последнего коммита в ветке main:
git checkout main git pull
Вернуться в основной репозиторий:
Зафиксировать изменение (новую ссылку на коммит):
git add src/styles git commit -m "Update css to latest version"
1. Сделайте "форк" этого репозитория нажатием кнопки "Fork" в правом верхнем углу страницы. Это создаст копию репозитория на Вашем GitHub аккаунте.
2. Клонируйте Ваш "форкнутый" репозиторий нажатием кнопки "Code".
Откроется маленькое окно. Скопируйте из него URL и выполните на своем компьютере команду:
3. Перейдите в папку с проектом:
4. Добавьте ссылку на оригинальный репозиторий для будущих обновлений:
Примечание: Здесь должен быть URL оригинального репозитория, а не "форкнутого" вами, так что username в нем должно быть AlexandrAnatoliev, а не ваш собственный username.
5. Проверьте ремоуты для своего репозитория:
Вы должны увидеть origin (создается автоматически при клонировании) и upstream-ремоуты:
origin https://github.com/<your-username>/project-euler-css.git (fetch) origin https://github.com/<your-username>/project-euler-css.git (push) upstream https://github.com/AlexandrAnatoliev/project-euler-css.git (fetch) upstream https://github.com/AlexandrAnatoliev/project-euler-css.git (push)
6. Выполните pull из upstream репозитория в Вашу master ветку, чтобы синхронизировать ее с основным проектом:
7. Создайте новую ветку командой:
Сейчас вы готовы начать работать с issue.
Помните: каждый раз сначала делать pull из upstream репозитория, чтобы держать содержимое
вашего локального репозитория в соответствии с главным проектом.
Примечание: Рекомендую всегда создавать новую ветку для каждого issue, который вы выполняете! Иначе pull request будут слишком большими и возможно возникнут конфликты слияния.
После того как вы решили проблему, вы готовы отправить изменения.
1. Добавьте ваши изменения в отслеживание:
2. Сделайте коммит:
3. Отправьте изменения в ваш "форкнутый" репозиторий:
После того как вы отправили Ваши изменения на GitHub, вы готовы создать pull request. Перейдите на Ваш "форк" репозитория на GitHub.
Поздравляю, вы сделали свой вклад в open source на GitHub!
Можете расслабиться и подождать пока не сделают
ревью вашего кода. Если все хорошо, ваш pull request
вольют в основную ветку. Если нет, вам будет
предложено внести изменения в ваш код.
Примечание: Помните, что нужно подождать ревью Вашего pull request, не закрывайте его сами. Если Вас просят сделать изменения, вы можете коммитить их в ту же самую ветку, не нужно закрывать текущий pull request и открывать новый.
Столкнувшись с затруднениями, не стесняйтесь открыть issue, написать в Discussions или мне на почту per-1986@list.ru.