Сложно. Всегда сложно начинать что-то с самого начала. Довольно неприятно совершать ошибки, особенно если вы работаете в команде. Весь open source состоит из сотрудничества и совместной работы. Мы хотим облегчить первые шаги в обучении и сотрудничестве начинающим разработчикам.
Чтение статей и учебников может помочь, но что может быть лучше, чем настоящий практический опыт, без риска что-либо испортить. Цель этого проекта - должным образом направить молодых новобранцев, а также предоставить им возможность сделать их первый вклад. Помните: чем меньше вы напряжены, тем лучше вы учитесь. Если вы ищете возможность осуществить свой первый вклад, просто следуйте простым шагам, расположенным ниже. Обещаем, будет интересно.
Если Вам не удобно в командной строке, это руководство использует инструменты графической оболочки (GUI).
Если у вас не установлен git на компьютере, установите его
Создайте собственное ответвление, нажав на кнопку fork
сверху этой страницы. Таким образом вы создадите копию этого репозитория в своем аккаунте.
Теперь клонируйте ваш репозиторий на пк. Нажмите на кнопку clone
, а затем на иконку copy to clipboard
, чтобы скопировать ссылку.
Откройте терминал и запустите следующую git команду:
git clone "url you just copied"
Где "url you just copied" (без кавычек) это ссылка на ваш репозиторий. Посмотрите предыдущие шаги, чтобы получить эту ссылку.
Например:
git clone https://github.com/this-is-you/first-contributions.git
Где this-is-you
ваш логин на github'e. Таким образом вы копируете репозиторий 'first-contributions' с GitHub на ваш пк.
Перейдите в каталог репозитория на вашем компьютере, если вы еще не там.
cd first-contributions
Теперь создайте ветвь, с помощью команды git checkout
git checkout -b <add-your-name>
Например:
git checkout -b add-alonzo-church
(Синтаксически не требуется, чтобы название ветви содержало слово add, но это оправдано, поскольку подчеркивает назначение этой ветви - добавить ваше имя в список.)
Теперь откройте файл Contributors.md
в вашем текстовом редакторе, впишите ваше имя и сохраните файл.
Если вы перейдете в директорию проекта и выполните git status
, вы увидите изменения. Добавьте эти изменения с помощью команды git add
.
git add Contributors.md
Теперь закоммитьте данные изменения с помощью команды git commit
.
git commit -m "Add <your-name> to Contributors list"
Измените <your-name>
на ваше имя
Запушьте ваши изменения с помощью git push
git push origin <add-your-name>
Измените <add-your-name>
на имя ветви, которую вы создали ранее.
Если вы зайдете в свой репозиторий на GitHub, вы увидите кнопку Compare & pull request
. Нажмите на нее.
Теперь подтвердите пулл-реквест.
Скоро я произведу объединение всех ваших изменений с основной ветвью данного проекта. Вы получите сообщение по электронной почте, когда изменения будут приняты (смержены).
Основная ветвь вашего репозитория не будет изменена. Для синхронизации выполните шаги, расположенные ниже.
Прежде всего перейдите в основную ветвь:
git checkout master
Затем добавьте url моего репозитория в поле upstream remote url
:
git remote add upstream https://github.com/Roshanjossey/first-contributions
Таким образом мы сообщим git'у, что существует другая версия данного проекта по определенной ссылке, и мы ее считаем мастером. Как только изменения смержены, подгрузите новую версию моего репозитория.
git fetch upstream
Таким образом мы забрали все изменения в моем ответвлении (upstream remote). После, вам нужно смержить новую версию моего репозитория с вашей мастер-ветвью.
git rebase upstream/master
Так вы применяете все изменения, которые вы подтянули к вашей мастер-ветви. Если вы запушите сейчас мастер-ветвь, ваше ответвление тоже будет содержать изменения.
git push origin master
Обратите внимание, что вы пушите в удаленной репозиторий origin.
На этом этапе я объединил вашу ветвь <add-your-name>
со своей мастер-ветвью, а вы объединили свою мастер-ветвь с моей. Ваша ветвь больше не нужна, вы можете удалить ее:
git branch -d <add-your-name>
Так же можете удалить ее версию в удаленном репозитории:
git push origin --delete <add-your-name>
Это совершенно не обязательно, но название этой ветви отражает ее довольно специфическое назначение. И продолжительность ее жизни может быть соответствующе короткой.
GitHub Desktop | Visual Studio 2017 | GitKraken | Visual Studio Code | Atlassian Sourcetree | IntelliJ IDEA |
Ниже несколько популярных репозиториев, где вы можете найти задания для новичков. Вперед, перейдите в репозитории, чтобы узнать больше.