Теперь, когда у нас есть базовые знания о том, что такое Git и как работает GitHub, давайте создадим наш первый в жизни git-репозиторий и отправим его на GitHub!
22.08.2022.01.png71.74 KB
В результате мы получим репозиторий на GitHub, который вы или кто-то другой сможет использовать для отслеживания вашего кода.
Инициализация git-репозитория
Репозиторий - это папка в вашей системе. Но эта папка еще не знает, что она должна быть git-репозиторием. Давайте это изменим. Сначала создайте тестовую папку на вашей локальной машине. Мы назовём её git-test:
mkdir git-test && cd git-test
Приведенные выше команды создадут папку и осуществят переход в эту папку. Вы можете запустить эти команды в терминале. Чтобы инициализировать новый git-репозиторий, выполните следующую команду в этой папке.
git init
Мы должны увидеть следующий ответ:
Git init succesfull
С этого момента Git будет отслеживать изменения и файлы, которые мы добавляем, что просто замечательно!
Добавление файлов в репозиторий
Давайте добавим файл README. md в наш репозиторий. Для этого вы можете использовать редактор. Внутри этого файла мы разместили следующую разметку для тестирования:
# Hello GitHub
Теперь мы можем проверить, отследил ли Git это изменение, используя команду status.
git status
Файл изменен, но не отслеживается в Git'е
Как вы можете видеть, в статусе указано, что файл readme новый или изменен, но пока не отслеживается. Чтобы добавить отдельный файл в Git, мы можем использовать команду add следующим образом:
git add README. md
Вы также можете добавить все открытые файлы с помощью команды используя '. ':
git add.
Если мы снова выполним команду status, то увидим, что файл readme теперь отслеживается.
Добавление файла в Git
Фиксация изменений
Это изменение теперь отслеживается, но не зафиксировано как конкретный коммит. Коммит - это как фиксация вашего кода в конкретный момент времени. Мы можем зафиксировать это в Git, чтобы оно было закоммичено.
Коммит может включать в себя сразу несколько файлов. Она не ограничивается каждым отдельным файлом.
Выполните команду commit:
git commit -am «Опишите ваш коммит».
Позвольте нам объяснить некоторые параметры:
-a: Означает фиксацию всех изменений в рабочем каталоге;
-m: Передать сообщение в качестве сообщения о коммите;
«MSG»: Этот текст является вашим сообщением о коммите и должен описывать то, что вы сделали.
Фиксация изменений в Git
Если мы теперь повторно проверим статус, то увидим, что ничего не осталось без него.
Git status clean
Теперь мы можем отслеживать любые изменения локально, что является отличным началом. Но на самом деле мы хотим добиться того, чтобы отслеживать их в децентрализованной системе, такой как GitHub.
Предоставление GitHub'у удалённого доступа
Зайдите на GitHub и создайте новый репозиторий. Дайте этому репозиторию описательное имя вашего проекта.
GitHub create new repo
Как только это будет сделано, создайте пустой репозиторий на GitHub. В нем есть вся необходимая нам информация, так как мы будем следовать второму пункту примера.
Описание пустого репозитория на GitHub
Вернитесь к своему терминалу в папку проекта, над которым мы работаем. Выполните следующую команду, которую вы только что получили с GitHub (убедитесь, что это URL вашего репозитория):
В приведенном выше шаге мы добавляем 'пульт' с именем origin. Вы можете назвать его по-другому, но origin является стандартным и наиболее распространенным.
Передача изменений git на GitHub
Последний шаг, который мы хотим сделать, это отправить наш код на GitHub. Это позволит отслеживать изменения, которые мы внесли, и все файлы, которые мы добавили.
Чтобы перенести изменения на GitHub, как мы только что поняли, нам нужно выполнить следующую команду:
git push origin master
Здесь мы указываем git push на нашу удаленную ветку origin на ветке master.
Обратная связь команды Git push в терминале
И если теперь вы перейдете на GitHub, вы увидите там свой код и коммит.
GitHub показывает код нашего проекта и коммит
Внесение и фиксация изменений
Давайте уделим немного времени тому, чтобы понять, как это работает. Изменим файл readme и включим в него дополнительное содержимое:
# Hello GitHub Hi GitHub, I'm Chris, and I just pushed code to you.
Добавьте еще один файл, чтобы посмотреть, как он работает с несколькими файлами. Мы создали простой файл test. txt и добавили в него несколько слов.
Теперь давайте снова выполним описанные выше шаги:
Добавьте файлы: git add.
Сделайте новый коммит: git commit -am «Changed readme, added test file»
Перенесите изменения: git push origin master
Шаги Git для фиксации новых изменений
И теперь мы видим, что наш новый файл и второй коммит появились в GitHub.
Новый коммит на GitHub
Заключение
Надеемся, вам понравилась эта статья и вы успешно получили свой первый в жизни опыт работы с Git в GitHub!
{"document": [{"text": [{"type": "string", "attributes": {}, "string": "Теперь, когда у нас есть базовые знания о том, что такое Git и как работает GitHub, давайте создадим наш первый в жизни git-репозиторий и отправим его на GitHub!"}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.01.png", "filesize": 73463, "height": 1080, "pic_id": 133708, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.01.jpeg", "width": 1920}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "В результате мы получим репозиторий на GitHub, который вы или кто-то другой сможет использовать для отслеживания вашего кода."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Инициализация git-репозитория"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Репозиторий - это папка в вашей системе. Но эта папка еще не знает, что она должна быть git-репозиторием. Давайте это изменим. Сначала создайте тестовую папку на вашей локальной машине. Мы назовём её "}, {"type": "string", "attributes": {"bold": true}, "string": "git-test"}, {"type": "string", "attributes": {}, "string": ":"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "mkdir git-test && cd git-test"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Приведенные выше команды создадут папку и осуществят переход в эту папку. Вы можете запустить эти команды в терминале. Чтобы инициализировать новый git-репозиторий, выполните следующую команду в этой папке."}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git init"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Мы должны увидеть следующий ответ:"}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Git init succesfull", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.02.png", "filesize": 93926, "height": 366, "pic_id": 133710, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.02.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "С этого момента Git будет отслеживать изменения и файлы, которые мы добавляем, что просто замечательно!"}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Добавление файлов в репозиторий"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Давайте добавим файл README. md в наш репозиторий. Для этого вы можете использовать редактор. Внутри этого файла мы разместили следующую разметку для тестирования:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "# Hello GitHub"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Теперь мы можем проверить, отследил ли Git это изменение, используя команду "}, {"type": "string", "attributes": {"bold": true}, "string": "status"}, {"type": "string", "attributes": {}, "string": "."}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git status"}], "attributes": ["quote"]}, {"text": [{"type": "attachment", "attributes": {"caption": "Файл изменен, но не отслеживается в Git'е", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.03.png", "filesize": 74525, "height": 366, "pic_id": 133712, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.03.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Как вы можете видеть, в статусе указано, что файл readme новый или изменен, но пока не отслеживается. Чтобы добавить отдельный файл в Git, мы можем использовать команду "}, {"type": "string", "attributes": {"bold": true}, "string": "add "}, {"type": "string", "attributes": {}, "string": "следующим образом:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git add README. md"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Вы также можете добавить все открытые файлы с помощью команды используя '"}, {"type": "string", "attributes": {"bold": true}, "string": ". '"}, {"type": "string", "attributes": {}, "string": ":"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git add."}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Если мы снова выполним команду "}, {"type": "string", "attributes": {"bold": true}, "string": "status"}, {"type": "string", "attributes": {}, "string": ", то увидим, что файл readme теперь отслеживается."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Добавление файла в Git", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.04.png", "filesize": 70836, "height": 366, "pic_id": 133713, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.04.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Фиксация изменений"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Это изменение теперь отслеживается, но не зафиксировано как конкретный коммит. Коммит - это как фиксация вашего кода в конкретный момент времени. Мы можем зафиксировать это в Git, чтобы оно было закоммичено."}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "Коммит может включать в себя сразу несколько файлов. Она не ограничивается каждым отдельным файлом."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Выполните команду "}, {"type": "string", "attributes": {"bold": true}, "string": "commit"}, {"type": "string", "attributes": {}, "string": ":"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git commit -am «Опишите ваш коммит»."}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Позвольте нам объяснить некоторые параметры:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "-a: Означает фиксацию всех изменений в рабочем каталоге;"}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "string", "attributes": {}, "string": "-m: Передать сообщение в качестве сообщения о коммите;"}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "string", "attributes": {}, "string": "«MSG»: Этот текст является вашим сообщением о коммите и должен описывать то, что вы сделали."}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "attachment", "attributes": {"caption": "Фиксация изменений в Git", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.05.png", "filesize": 57044, "height": 230, "pic_id": 133715, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.05.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Если мы теперь повторно проверим статус, то увидим, что ничего не осталось без него."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Git status clean", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.06.png", "filesize": 52151, "height": 230, "pic_id": 133716, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.06.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Теперь мы можем отслеживать любые изменения локально, что является отличным началом. Но на самом деле мы хотим добиться того, чтобы отслеживать их в децентрализованной системе, такой как GitHub."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Предоставление GitHub'у удалённого доступа"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Зайдите на GitHub и создайте новый репозиторий. Дайте этому репозиторию описательное имя вашего проекта."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "GitHub create new repo", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.07.png", "filesize": 118549, "height": 870, "pic_id": 133718, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.07.jpeg", "width": 748}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Как только это будет сделано, создайте пустой репозиторий на GitHub. В нем есть вся необходимая нам информация, так как мы будем следовать второму пункту примера."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Описание пустого репозитория на GitHub", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.08.png", "filesize": 132511, "height": 707, "pic_id": 133719, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.08.jpeg", "width": 1243}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Вернитесь к своему терминалу в папку проекта, над которым мы работаем. Выполните следующую команду, которую вы только что получили с GitHub (убедитесь, что это URL вашего репозитория):"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git remote add origin git@github. com: rebelchris/git-test. git"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Для этого шага нет никакой обратной связи."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "В приведенном выше шаге мы добавляем 'пульт' с именем "}, {"type": "string", "attributes": {"bold": true}, "string": "origin"}, {"type": "string", "attributes": {}, "string": ". Вы можете назвать его по-другому, но "}, {"type": "string", "attributes": {"bold": true}, "string": "origin "}, {"type": "string", "attributes": {}, "string": "является стандартным и наиболее распространенным."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Передача изменений git на GitHub"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Последний шаг, который мы хотим сделать, это отправить наш код на GitHub. Это позволит отслеживать изменения, которые мы внесли, и все файлы, которые мы добавили."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Чтобы перенести изменения на GitHub, как мы только что поняли, нам нужно выполнить следующую команду:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "git push origin master"}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Здесь мы указываем "}, {"type": "string", "attributes": {"bold": true}, "string": "git push"}, {"type": "string", "attributes": {}, "string": " на нашу удаленную ветку "}, {"type": "string", "attributes": {"bold": true}, "string": "origin "}, {"type": "string", "attributes": {}, "string": "на ветке "}, {"type": "string", "attributes": {"bold": true}, "string": "master"}, {"type": "string", "attributes": {}, "string": "."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Обратная связь команды Git push в терминале", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.09.png", "filesize": 71192, "height": 281, "pic_id": 133722, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.09.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "И если теперь вы перейдете на GitHub, вы увидите там свой код и коммит."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "GitHub показывает код нашего проекта и коммит", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.10.png", "filesize": 38375, "height": 344, "pic_id": 133723, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.10.jpeg", "width": 930}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Внесение и фиксация изменений"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Давайте уделим немного времени тому, чтобы понять, как это работает. Изменим файл readme и включим в него дополнительное содержимое:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {"italic": true}, "string": "# Hello GitHub\nHi GitHub, I'm Chris, and I just pushed code to you."}], "attributes": ["quote"]}, {"text": [{"type": "string", "attributes": {}, "string": "Добавьте еще один файл, чтобы посмотреть, как он работает с несколькими файлами. Мы создали простой файл test. txt и добавили в него несколько слов."}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Теперь давайте снова выполним описанные выше шаги:"}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Добавьте файлы: "}, {"type": "string", "attributes": {"bold": true}, "string": "git add"}, {"type": "string", "attributes": {}, "string": " "}, {"type": "string", "attributes": {"bold": true}, "string": "."}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "string", "attributes": {}, "string": "Сделайте новый коммит: "}, {"type": "string", "attributes": {"bold": true}, "string": "git commit -am «Changed readme, added test file» "}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "string", "attributes": {}, "string": "Перенесите изменения:"}, {"type": "string", "attributes": {"bold": true}, "string": " git push origin master"}], "attributes": ["bulletList", "bullet"]}, {"text": [{"type": "attachment", "attributes": {"caption": "Шаги Git для фиксации новых изменений", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.11.png", "filesize": 107749, "height": 400, "pic_id": 133725, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.11.jpeg", "width": 710}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "И теперь мы видим, что наш новый файл и второй коммит появились в GitHub."}], "attributes": []}, {"text": [{"type": "attachment", "attributes": {"caption": "Новый коммит на GitHub", "presentation": "gallery"}, "attachment": {"caption": "", "contentType": "image/png", "filename": "22.08.2022.12.png", "filesize": 54188, "height": 409, "pic_id": 133726, "url": "https://storage.yandexcloud.net/pabliko.files/article_cloud_image/2022/08/22/22.08.2022.12.jpeg", "width": 925}}], "attributes": []}, {"text": [{"type": "string", "attributes": {}, "string": "Заключение"}], "attributes": ["heading1"]}, {"text": [{"type": "string", "attributes": {}, "string": "Надеемся, вам понравилась эта статья и вы успешно получили свой первый в жизни опыт работы с Git в GitHub!"}], "attributes": []}], "selectedRange": [161, 161]}
Комментарии 0