0.00
0 читателей, 4902 топика

Что такое Git? Зачем он нужен и как использовать? (примеры из практики)


Друзья, в этом видео я расскажу вам о том, что такое Git, зачем он нужен, как его использовать и как с его помощью оптимизировать и упростить работу в команде. Мы поговорим обо всех особенностях использования этого инструмента и я наглядно покажу как с ним работать.

Что такое git?
Git — это система контроля версий, а если сказать простым языком то это программа, инструмент, которая позволяет нам фиксировать наши изменения в коде, а также благодаря этой фиксации позволяет нескольким людям или даже командам вместе слажено и параллельно работать над каким-то программным продуктом.

Представьте что вы пишите программу и у вас есть какая-то функция, которая допустим сохраняет информацию информацию о пользователе в базу данных, и для этого сохранения вам естественно нужна логика которая собственно это сохранение будет делать. Вот вы написали код, все круто все работает. Как сделать своего рода сохранение как в компьютерной игре которое сможет зафиксировать прогресс?

Git — это как раз такая программа, такая система, которая позволяет эти сохранения создавать и потом управлять ими, менять, возвращаться к ним, удалять и переписывать их, такая фиксация в терминах Git-а называется `commit`

Проще всего гит представлять по аналогии либо с компьютерной игрой и ее сохранениями либо с таким роботом-фотографом, который в любой момент который вы ему скажете сделает так сказать фотографию ваших файлов с которыми вы работаете, зафиксирует их состояние на текущий момент, и затем любой момент может вам сказать поменялось ли что-то в этих файлов с момента прошлой «фиксации».

Git собственно так и делает, вы говорите ему команду, он запоминает состояние ваших файлов на текущий момент присваивая ему специальный номер вот это снимка, там называемый `commit hash`.

Commit hash — набор символов которые уникально идентифицируют сохранение состояния файлов в конкретный момент времени;

Что такое ветки в гите и как их использовать?
В git также используется так называемая система веток, представьте себе что ветка, так называемая branch — это маршрут по которому едет поезд, а каждая его остановка, сохранение состояния это коммит. То есть когда мы начинаем разрабатывать какую-то задачу, пишем код нам нужно идти с точки А в точку Б, у нас скажем пустой файл, а потом постепенно наш код начинает эволюционировать и он со временем начинает что-то внятное делать.

Так вот этот процесс разработки можно представить по той же аналогии с поездом, поездвыезжает с точки А и ему нужно доехать до точки Б, и этот маршрут он будет ехать по своему пути (в нашем случае это и будет ветка нашего git), а также по пути ему надо останавливаться чтобы фиксировать свой прогресс по маршруту, это и будут коммиты в нашем случае, то есть мы пишем код в рамках ветки и делаем коммиты, для того чтобы сохранять наш прогресс внутри метки.

Как его используют команды?
Как такой подход позволяет нам распараллелить работу разных людей и команд и сделать их более продуктивными? Все дело в том что когда мы работаем над каким-то проектом и нескольоко людей пишут код они во 1 могут одновременно менять одни и те же файлы.

Так вот фишка гита в том что каждый разработчик может сам себе создать такую ветку, уникальный маршрут поезда на пути которого будут свои уникальные остановки, то есть свои уникальные коммиты этого разработчика, и эта ветка она будет скажем так принадлежать одному человеку и там он будет фиксировать все свои изменения, делать коммиты.

И все сводится к достаточно простой логике, у нас есть какой-то код который нам надо написать, мы сделали новую ветку, по пути того как мы разрабатываем мы в этом ветке делаем коммиты чтобы зафиксировать изменения, как только мы понимаем что у нас все готово, нам нужно объединится с другими разработчиками, скажем так сделать так чтобы наши изменения ехали по общему маршруту, то мы просто сливаем все наши коммиты из нашей ветки в общую. По аналогии с поездами можно представить что у нас есть какая-то главный поездной маршрут в котором есть все наши остановки, коммиты из всех веток. Таким образом все довольно просто, сделали ветку, написали код попутно фиксируя изменения коммитами, после того как закончили, слили все наши изменения в общую ветку чтобы эти коммиты, эти изменения были доступны всем другим разработчикам.

00:00 Начало
1:03 — Git — что это?
2:52 — Что такое Git commit
4:09 — Ветки или «branch» что это такое?
5:27 — Как команды используют Git?
7:49 — Как применять Git в работе. Практика.
7:57 — Новый репозиторий. (Git init)
9:17 — Создание файла и коммита. (Git commit)
11:46 — Сохранение файлов (Git commit -m)
12:46 — Как работают с ветками и какими они бывают.
14:51 — Создание develop ветки, и ветки для работы ( Git checkout -b feature)
17:06 — Как новый файл добавляется в Git
19:39 — Откат к коммиту (Git reset)
20:44 — Слив на одну ветку (Git merge)

Соцсети:
www.instagram.com/itwithvitaly/
www.facebook.com/itwithvitaly

#примерыИзПрактики #обучениеIT #становимсяПрограммистами

IP-адреса | Курс "Компьютерные сети"


Лекция по IP-адресам, часть 1. Курс «Компьютерные сети» — www.asozykin.ru/courses/networks_online.

Как можно поддержать курс:
1. Яндекс Кошелек — money.yandex.ru/to/410014298228017
2. PayPal — www.paypal.me/asozykin
Заранее спасибо за помощь!

Добавляйтесь в друзья в социальных сетях:
вКонтакте — vk.com/avsozykin
Facebook — www.facebook.com/asozykin
Twitter — twitter.com/AndreySozykin

Обновленная версия лекции с более качественным звуком.

IP-адреса — это глобальные адреса, используемые в стеке протоколов TCP/IP. Широко используются в Интернет.
Используются для уникальной идентификации компьютеров в составной сети.

Существует две версии протокола IP:
— IPv4: адрес 4 байта
— IPv6: адрес 16 байт

Длина адреса IPv4 – 4 байта, 32 бита.
Форма представления: 4 десятичных числа 0-255, разделенных точками.

Подсеть (IP-сеть, сеть, subnet) – множество компьютеров, у которых старшая часть IP-адреса одинаковая.

Структура IP-адреса:
— Номер подсети – старшие биты
— Номер хоста (компьютера в сети) – младшие биты

Маска подсети показывает, где в IP-адресе номер сети, а где хоста. Структура маски:
— Длина 32 бита.
— Единицы в позициях, задающих номер сети.
— Нули в позициях, задающих номер хоста.

Формы записи маски:
— Десятичное
— В виде префикса

Мой канал с краткими и понятными объяснениями сложных тем в ИТ и компьютерных науках —
goo.gl/kW93MA

Пишу программу в машинных кодах


#soer #ityoutubersru

В этом видео я показываю как можно написать и скормить конкретные инструкции для процессора.

Чат для программистов — discord.gg/3UVJWAs
Спонсорская помощь — www.patreon.com/soersoft

Группа ВК — vk.com/codeartblog
Github — github.com/soersoft
Веб-сайт — codeart.ru

Духовная наука познания себя [Аудиокнига]


☘️ Телеграм — intg.me/StupenySoznaniya
► Аудиокнига «Духовная наука познания себя».
Автор: Сиддхарамешвар Махарадж
Исполнитель: Nikosho — nikosho.ru/
Время звучания: 12:47:31
Тип: аудиокниги по саморазвитию.
Жанр: эзотерика, медитация, саморазвитие.

Шри Сиддхарамешвар Махарадж – один из величайших джняни своего времени. На Западе он приобрел известность благодаря своим знаменитым ученикам Шри Нисаргадатте Махараджу и Шри Ранджиту Махараджу. Между тем, именно в результате его влияния состоялось духовное становление этих Учителей и именно он выстроил то основание, на котором впоследствии стала возможной интеграция древнего учения натхов в сознание современного человека. Эта книга содержит заключительную часть сборника бесед с Сиддхарамешваром Махараджем «Адхьятмаджнянача Йогешвар», первая часть которого опубликована в книге «Универсальный ключ к осознанию Себя».

Полезные ссылки:
ॐ Наш Телеграм — t.me/StupenySoznaniya
✔ Наш сайт — devisu.info
✉ Реклама на канале — prolog.yt/channels/view/14499
❤ Желающим помочь каналу — donatepay.ru/d/165558

React JS. Полный Курс 2020 (Вся Теория Включена!)


Все основы React в одном видео на примерах и практике
Мой Курс Стань JavaScript Senior: clc.to/senior

Моя образовательная площадка: www.vladilen.dev/

Мои Udemy Курсы:
Angular 9: clc.to/angular
React Native: clc.to/rnative
ReactJS: clc.to/react
NodeJS: clc.to/nodejs
Angular Fullstack (MEAN): clc.to/fullstack

Подписывайся на соц сети:
Telegram: teleg.one/js_by_vladilen
Instagram: www.instagram.com/vladilen.minin
VK: vk.com/vladilen.minin
Группа VK: vk.com/js_by_vladilen

Содержание урока:
00:00 Что такое React
00:50 Как установить React
02:12 Обзор структуры проекта
05:22 Запуск приложения
09:13 Компоненты
12:24 Стили
17:38 Передача параметров в компонент
18:20 Циклы
22:10 PropTypes
26:30 Работа с JSX
31:30 События
36:18 Работа со state (useState)
39:20 Динамические css классы
41:30 React Context
45:39 useContext
48:10 Условные операторы в JSX
50:00 Работа с формой
55:34 Создание кастомного хука для input
1:00:06 useEffect (работа с севером)
1:03:07 Создание Loader
1:07:26 React.Suspense (React.lazy)
1:11:11 React.Component (создание модального окна)
1:13:30 React.Fragment
1:16:52 Полезен был контент?

Исходный код:
drive.google.com/open?id=1RGhJcjlJqiLPQTK3mIQUuE5Ln_V5NyJ7

ReactJS 2020 — Полный курс
#react #reactjs

Управление проектами не по книжке


СКАЧАЙТЕ онлайн-курс ►►► clck.ru/KwQ4M ►►► по Управлению проектами ►►► clck.ru/KwQ4M

«УП не по книжке», модератор Павел Алферов.

Вопросы к обсуждению:

➞ Живое УП: как реально живет проектное управление?
➞ Что-то пошло не так: когда теория разнится с практикой
➞ Кейсы нестандартных ситуаций и примеры выхода из них
➞ Проектное управление без PMO
➞ Как проектное управление умирает и воскресает?

Подписывайтесь на канал ➞ www.youtube.com/channel/UCcc6M3QpNeIcXYR0iJT5fJQ?sub_confirmation=1

Рекомендуемые видео-уроки по УП:

0) Практика переговоров: www.pmsmart.ru/peregovory-tripwire/

1) Инициация проекта: www.pmpshop.ru/initiation/landing

2) Планирование проекта: www.pmpshop.ru/002-Planning-MSproject-trip

3) Риски проекта: www.pmpshop.ru/Risk-002-Trip

4) Команда проекта: www.pmpshop.ru/project-team/tripwire

5) Agile — базовый курс: www.pmsmart.ru/agile-base-tripwire

Добавляйте меня в соцсетях:

Я в Facebook: www.facebook.com/pmsofonov
Я в Vkontakte(паблик) vk.com/pmsofonov
Я в Telegram: t.me/Pminstitute
Я в Instagram instagram.com/pmsofonov

2. Управление IT-проектами и продуктом. Customer Development, UX-исследования | Технострим


Слайды лекции: bit.ly/2T8kFRS
Подробнее о курсе: bit.ly/2u6Z56v

Лекция читается в рамках образовательного проекта «Техносфера Mail.ru Group» при МГУ им. М.В. Ломоносова.

Цель курса — получить знания в области управления продуктами и проектами на примере Mail.Ru Group, понять роль менеджера продукта и проекта, узнать перспективы развития и особенности управления продуктом и проектом в крупной компании.

В курсе рассмотрены теория и практика по управлению продуктом и всем, что есть внутри (или рядом с ним): процессами, требованиями, метриками, сроками, запусками и, конечно — про людей и как с ними общаться.

Смотрите также:
► Курс «Углубленное программирование на C\C » — goo.gl/5ygiCg
► Курс «Многопоточный C » — goo.gl/TpR2SW

___

ТЕХНОСТРИМ — образовательный канал для IT специалистов.
___

ПОДПИСЫВАЙСЯ, ЕСЛИ ТЕБЕ ИНТЕРЕСНО УЗНАТЬ:

✔ как наши преподаватели – топовые специалисты Mail.Ru Group руководят разработкой в таких проектах, как Почта, ВКонтакте, Облако, Maps.me, Одноклассники, и решают сложные задачи каждый день
✔ реальные примеры из практики с анализом их достоинств и недостатков
✔ современные технологии, которые применяются в проектах-лидера Рунета
✔ о митапах, мастер-классах, вебинарах и других мероприятиях, которые проводятся на базе вузов и Mail.Ru Group.

Нажмите здесь для подписки ‣ www.youtube.com/TPMGTU?sub_confirmation=1

Все наши лекции проходят в ведущих вузах страны: МГУ, МГТУ, МФТИ, МИФИ, СПбПУ.
___

ТЫ СТУДЕНТ?

Вступай в наши образовательные проекты и участвуй в чемпионатах. Лучшие студенты получают возможность стажировки в Mail.Ru Group. Отбор — каждые полгода!

Технопарк при МГТУ им. Баумана ‣ park.mail.ru
Техносфера при МГУ им. Ломоносова ‣ sphere.mail.ru
Технотрек при МФТИ ‣ track.mail.ru
Техноатом при МИФИ ‣ atom.mail.ru
Технополис при СПбПУ ‣ polis.mail.ru
Чемпионаты для программистов ‣ cups.mail.ru/
Mail.Ru Group для образования ‣ vk.com/mrgforedu

Лучшая самодельная Ретро-консоль из Raspberry Pi и Recalbox


В этом видео я расскажу о лучшей по моему мнению игровой приставке для Retro игр. Её основой послужит мини компьютер под названием Raspberry Pi 3 Model B (plus).
Данная консоль умеет воспроизводить практически все игровые платформы из 80-х 90-х и 00-х годов. Такие как NES, SNES, Sega, ZX Spectrum, PS1 Nintendo 64 Так же обладает многими преимуществами в виде гибких настроек под любые экраны, контроллеры и системы связи. По идее из проводов требуется только питание и кабель для передачи видео. остальное может быть беспроводным, так как Raspberry оборудован Wifi и Bluetooth связью

Картинка со списком горячих клавиш (Альбом группы VK) vk.com/album-43897716_163423926?z=photo-43897716_456243441/album-43897716_163423926

Программа Etcher: etcher.io
программа PUtty: www.chiark.greenend.org.uk/~sgtatham/putty/latest.html

Команда скрипт для безопасного выключения (ссылка может отделиться и сократиться по этому копируйте текст и ссылку отдельно и совмещайте в блокноте)
wget -O — «raw.githubusercontent.com/RetroFlag/retroflag-picase/master/recalbox_install.sh» | bash (подходит для корпусов RetroFlag Nespi )

Ссылки на страницы с комплектующими для сборки такой приставки и ознакомления
— Весь комплект сразу ali.pub/3hpo54 (Raspberry Pi 3 Model B Plus, блок питания, флешка 32G sd, HDMI кабель, радиаторы и вентилятор Геймпады 2 шт. и корпус Retroflag NESPi (при заказе корпус позволяют выбрать, нужно писать продавцу в сопроводительном комментарии к заказу) — товар часто заканчивается и недоступен в таких случаях есть следующий такой вариант
Полный набор с корпусом SnesPi ali.pub/44aevt (Полные только версии Kit2 и Kit3) А в рекомендуемых будут остальные версии корпусов с полным набором.
— Сама плата Raspberry Pi 3B ali.pub/3t5jrg
— Блок питания 5v 3A ali.pub/3t5k2c
— Корпус NESPI ali.pub/3fwgxe
— Флешки ali.pub/3al73d
— Контроллеры в стиле Sega Saturn c USB ali.pub/39v3gg
— Конвертер HDMI на тюльпаны (3RCA) ali.pub/2k1f7c
Другие варианты корпусов в виде приставок для Raspberry Pi
SnesPi ali.pub/3cejz9 (С видом от Супер Фамиком)
MegaPi ali.pub/3p5zg1 (С видом от Сега Генезис)
* Наша группа VK vk.com/funygamers