- How to Install and Use Git in Linux System
- What is Git?
- Install Git in Linux
- Configuring Git in Linux
- Create a GitHub Account
- Setting up Git Repositories in Linux
- Create a Remote Repo on GitHub
- Git для новичков (часть 1)
- Как работает
- Установка
- Настройка
- Создание репозитория
- Процесс работы с Git
- Визуальный интерфейс
- Создаем свой первый проект и выкладываем на GitHub
- Итог
How to Install and Use Git in Linux System
When you start out as a coder or software developer under a Linux operating system environment, you start to make reasonable milestones due to the flexibility and open-source nature of the various Linux distributions.
A developer with an enterprise mindset will always want to improve their code to better versions. Such a mindset gets you thinking of a platform that can keep track of the growth steps of your developer code.
This article is here to introduce you to Git; a version control system for all your coding projects.
What is Git?
A version control system gives developers an upper hand in tracking file changes related to their developer code. With Git, all versions of project files you ever worked with are kept on record together with the various changes implemented on each file. You have the freedom of switching between these project file versions whenever you feel like it.
With Git, a repository acts as the base storage location for your first project file uploads and will keep track of every change that will affect those files with inclusion to other file uploads that may follow.
Install Git in Linux
The wide footprint of Git makes it a compatible candidate for all Linux operating system distributions. Depending on the Linux operating distribution you are using, you can easily install the Git version control package by referencing either of the following installation commands:
$ sudo apt-get install git-all [On Debian, Ubuntu and Mint] $ sudo yum install git-all [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux] $ sudo emerge -a sys-apps/git-all [On Gentoo Linux] $ sudo pacman -S git-all [On Arch Linux] $ sudo zypper install git-all [On OpenSUSE]
Configuring Git in Linux
As mentioned earlier, Git uses a repository as its base storage location. A repository or repo can be local or remote. With local repositories, project files reside on a local machine or server whereas, with remote repositories, project files reside on a remote machine or server.
Now that you have the Git version control system installed, you need access to a cloud service like GitHub or GitLab for hosting the various Git repositories you will be creating, updating, and tracking.
For this Guide, let us go with GitHub.
Create a GitHub Account
Create a GitHub account if you do not have one.
For first time use, you will need the username and email of your GitHub account to configure a global variable that will inform the GitHub cloud service that it is you making changes to your project repo each time you need to upload a file, remove a file, or update a file.
From your Linux terminal, do the following:
$ git config --global user.name "Your GitHub Username" $ git config --global user.email "Your GitHub Email"
We can re-check or confirm the configurations we made with this git command.
Setting up Git Repositories in Linux
Since a repository holds all your project files and directories, making changes to these files and directories is through commits. It is through commits that we are able to execute repository changes whether we want to revert a change or proceed with new changes.
Create a directory on your local machine that will be holding your projects.
$ mkdir linuxshelltips_repo $ cd linuxshelltips_repo
Initialize git inside this directory.
The above command tells Git to start tracking all changes inside the linuxshelltips_repo directory when you are adding or removing something.
Next, let us create a random file with some text:
$ sudo nano linuxshelltips.txt
$ git add linuxshelltips.txt
If you have many files inside your repo directory and you want to add them all, use the command:
Next, commit the file(s). Your file commits should be associated with a message so that you know exactly what you did to that file when you later revise the project repository.
$ git commit -m "My first LinuxShellTips Repo"
If you want to ignore committing some files or directories like the ones associated with configuration files and virtual environments, create a .gitignore file, and inside it, specify the files and directories it should ignore.
Git will not add and commit anything specified in this file.
Create a Remote Repo on GitHub
Create a remote repo on GitHub that will receive our local repo files.
Add the origin of this created remote repo to sync with your local repo.
$ git remote add origin https://github.com/[YOUR_GITHUB_USERNAME]/linuxshelltips_repo.git
You will run into the following authentication error trying to push your first repo to GitHub.
Since GitHub no longer supports password authentication from the command line, we will need to use a token in place of a password. Follow these screen captures from your GitHub account to set up your authentication token.
Now let us check on the status of our unpushed repo.
Let us re-try the above steps again.
$ git add linuxshelltips.txt $ git status $ git push -u origin master
When prompted for a password, remember to use the token key you generated earlier.
Our file should have been successfully pushed to GitHub.
You have successfully installed the git version control package and pushed your first project to GitHub. When your project continues to grow, remember to use the following repetitive git commands cycle to push your code to GitHub and keep track of your project’s milestones.
$ git add . $ git status $ git commit -m "message about project change" $ git push -u origin master
Git для новичков (часть 1)
Git — это консольная утилита, для отслеживания и ведения истории изменения файлов, в вашем проекте. Чаще всего его используют для кода, но можно и для других файлов. Например, для картинок — полезно для дизайнеров.
С помощью Git-a вы можете откатить свой проект до более старой версии, сравнивать, анализировать или сливать свои изменения в репозиторий.
Репозиторием называют хранилище вашего кода и историю его изменений. Git работает локально и все ваши репозитории хранятся в определенных папках на жестком диске.
Так же ваши репозитории можно хранить и в интернете. Обычно для этого используют три сервиса:
Каждая точка сохранения вашего проекта носит название коммит (commit). У каждого commit-a есть hash (уникальный id) и комментарий. Из таких commit-ов собирается ветка. Ветка — это история изменений. У каждой ветки есть свое название. Репозиторий может содержать в себе несколько веток, которые создаются из других веток или вливаются в них.
Как работает
Если посмотреть на картинку, то становиться чуть проще с пониманием. Каждый кружок, это commit. Стрелочки показывают направление, из какого commit сделан следующий. Например C3 сделан из С2 и т. д. Все эти commit находятся в ветке под названием main . Это основная ветка, чаще всего ее называют master . Прямоугольник main* показывает в каком commit мы сейчас находимся, проще говоря указатель.
В итоге получается очень простой граф, состоящий из одной ветки ( main ) и четырех commit. Все это может превратиться в более сложный граф, состоящий из нескольких веток, которые сливаются в одну.
Об этом мы поговорим в следующих статьях. Для начала разберем работу с одной веткой.
Установка
Основой интерфейс для работы с Git-ом является консоль/терминал. Это не совсем удобно, тем более для новичков, поэтому предлагаю поставить дополнительную программу с графическим интерфейсом (кнопками, графиками и т.д.). О них я расскажу чуть позже.
Но для начала, все же установим сам Git.
- Windows. Проходим по этой ссылке, выбираем под вашу ОС (32 или 64 битную), скачиваем и устанавливаем.
- Для Mac OS. Открываем терминал и пишем:
#Если установлен Homebrew brew install git #Если нет, то вводим эту команду. git --version #После этого появится окно, где предложит установить Command Line Tools (CLT). #Соглашаемся и ждем установки. Вместе с CLT установиться и git
# Debian или Ubuntu sudo apt install git # CentOS sudo yum install git
Настройка
Вы установили себе Git и можете им пользоваться. Давайте теперь его настроим, чтобы когда вы создавали commit, указывался автор, кто его создал.
Открываем терминал (Linux и MacOS) или консоль (Windows) и вводим следующие команды.
#Установим имя для вашего пользователя #Вместо можно ввести, например, Grisha_Popov #Кавычки оставляем git config --global user.name "" #Теперь установим email. Принцип тот же. git config --global user.email ""
Создание репозитория
Теперь вы готовы к работе с Git локально на компьютере.
Создадим наш первый репозиторий. Для этого пройдите в папку вашего проекта.
#Для Linux и MacOS путь может выглядеть так /Users/UserName/Desktop/MyProject #Для Windows например С://MyProject cd #Инициализация/создание репозитория git init
Теперь Git отслеживает изменения файлов вашего проекта. Но, так как вы только создали репозиторий в нем нет вашего кода. Для этого необходимо создать commit.
#Добавим все файлы проекта в нам будующий commit git add . #Или так git add --all #Если хотим добавить конкретный файл то можно так git add #Теперь создаем commit. Обязательно указываем комментарий. #И не забываем про кавычки git commit -m ""
Отлично. Вы создали свой первый репозиторий и заполнили его первым commit.
Процесс работы с Git
Не стоит после каждого изменения файла делать commit. Чаще всего их создают, когда:
- Создан новый функционал
- Добавлен новый блок на верстке
- Исправлены ошибки по коду
- Вы завершили рабочий день и хотите сохранить код
Это поможет держать вашу ветки в чистоте и порядке. Тем самым, вы будете видеть историю изменений по каждому нововведению в вашем проекте, а не по каждому файлу.
Визуальный интерфейс
Как я и говорил ранее, существуют дополнительные программы для облегчения использования Git. Некоторые текстовые редакторы или полноценные среды разработки уже включают в себя вспомогательный интерфейс для работы с ним.
Но существуют и отдельные программы по работе с Git. Могу посоветовать эти:
Я не буду рассказывать как они работают. Предлагаю разобраться с этим самостоятельно.
Создаем свой первый проект и выкладываем на GitHub
Давайте разберемся как это сделать, с помощью среды разработки Visual Studio Code (VS Code).
Перед началом предлагаю зарегистрироваться на GitHub.
Создайте папку, где будет храниться ваш проект. Если такая папка уже есть, то создавать новую не надо.
- Установите себе дополнительно анализаторы кода для JavaScript и PHP
- Откройте вашу папку, которую создали ранее
После этого у вас появится вот такой интерфейс
- Здесь будут располагаться все файлы вашего проекта
- Здесь можно работать с Git-ом
- Кнопка для создания нового файла
- Кнопка для создания новой папки
Если ваш проект пустой, как у меня, то создайте новый файл и назовите его index.html . После этого откроется окно редактирование этого файла. Напишите в нем ! и нажмите кнопку Tab . Автоматически должен сгенерироваться скелет пустой HTML страницы. Не забудьте нажать ctrl+s чтобы файл сохранился.
Давайте теперь перейдем во вкладу для работы с Git-ом.
- Кнопка для публикации нашего проекта на GitHub
- После нажатия на кнопку 1 , появится всплывающее окно. Нужно выбрать второй вариант или там где присутствует фраза . public repository
Если вы хотите создать локальный репозиторий и опубликовать код в другой сервис, то необходимо нажать на кнопку Initialize Repository . После этого, вручную выбрать сервис куда публиковать.
После того, как выбрали «Опубликовать на GitHub публичный репозиторий» (пункт 2), программа предложит вам выбрать файлы, которые будут входить в первый commit. Проставляем галочки у всех файлов, если не проставлены и жмем ОК . Вас перекинет на сайт GitHub, где нужно будет подтвердить вход в аккаунт.
Вы создали и опубликовали репозиторий на GitHub.
Теперь сделаем изменения в коде и попробуем их снова опубликовать. Перейдите во вкладку с файлами, отредактируйте какой-нибудь файл, не забудьте нажать crtl+s (Windows) или cmd+s (MacOS), чтобы сохранить файл. Вернитесь обратно во вкладу управления Git.
Если посмотреть на значок вкладки Git, то можно увидеть цифру 1 в синем кружке. Она означает, сколько файлов у нас изменено и незакоммичено. Давайте его закоммитим и опубликуем:
- Кнопка для просмотра изменений в файле. Необязательно нажимать, указал для справки
- Добавляем наш файл для будущего commit
- Пишем комментарий
- Создаем commit
- Отправляем наш commit в GitHub
Поздравляю, вы научились создавать commit и отправлять его в GitHub!
Итог
Это первая вводная статья по утилите Git. Здесь мы рассмотрели:
- Как его устанавливать
- Как его настраивать
- Как инициализировать репозиторий и создать commit через консоль
- Как на примере VS Code, опубликовать свой код на GitHub
Забегая вперед, советую вам погуглить, как работают следующие команды:
git help # справка по всем командам git clone git status git branch git checkout git merge git remote git fetch git push git pull
P.S. Для облегчения обучения, оставлю вам ссылку на бесплатный тренажер по Git.
В телеграмм канале Step by Step , я публикую еще больше материала и провожу обучающие стримы, для всех желающих.