Git

Какво е Git?

Какво е Git?

Какво е Git?

Днес повечето проекти за разработка на софтуер са съвместни усилия. В тези проекти могат да работят стотици или хиляди хора. Така че проследяването на промените е необходимост за по-гладко сътрудничество. Git е разпределена система за контрол на версиите с отворен код, която следи софтуерните активи и помага да се изпълняват по-ефективни процеси на разработка.

Какво е система за контрол на версиите?

Когато разработчиците работят върху софтуер, те трябва да следят промените си. Система за управление на версиите (VCS) запомня версиите на софтуера, докато се движи през различните етапи на разработка. Работата със система за контрол на версиите има следните предимства:

Git - Разпределеният контрол на версиите

Първоначално повечето системи за контрол на версиите бяха централизирани. В централизирания модел информацията за контрол на версиите като авторство, дата, час и информация за модификация ще се поддържа в централизиран сървър или база данни. Проблемът с този модел беше, че екипите за разработка ще бъдат ограничени от мощността или трафика на централния сървър. Когато централният сървър падне, цялата система ще бъде в застой.

В разпределена система за контрол на версиите (DVCS) информацията за версията се поддържа с всяко копие на кода. Тя позволява споделяне между връстници. Няма нужда от централизирано хранилище (въпреки че е възможно да се настрои такова).


Кратка история на Git

Git започна в малко противоречия като акт на отмъщение. През 2002 г. общността на Linux започна да използва безплатно разпространената система за контрол на версиите BitKeeper безплатно. Но през 2005 г. връзката между общността на Linux и BitKeeper се разпадна, когато статутът на безплатна употреба беше отменен. Така че Линус Торвалдс, създателят на Linux, започна да разработва Git като продукт с отворен код. Същата година излезе първата версия на Git. Днес Git е най-популярната система за контрол на версиите.

Плюсове и минуси на Git

Git е проста и мощна разпределена система за контрол на версиите със следните плюсове и минуси:

Професионалисти

Производителност: Повечето екипи за разработка се преместват в Git за предимствата на производителността. Ангажирането, разклоняването и обединяването е по-бързо в Git от централизираните системи за контрол на версиите като CVS, SVN или Perforce. Също така, разпределената същност на софтуера улеснява разработчиците да споделят работата между партньорите. Този процес е по-бърз от получаването на кода от централен сървър.

Сигурност: Целостта на кода е по-лесна за проверка в Git. Той използва SHA1 криптографски сигурно хеширане. Хешовете са уникални за всяка модификация. Ако някой промени модификация, хешовете няма да съвпадат. Това свойство на Git затруднява някой да се промъкне тайно в промените в кода.

Гъвкавост: Git е проектиран да се адаптира към всеки работен процес. По-старите системи за контрол на версиите са по-рестриктивни. Но Git дава повече свобода на вашия екип. Можете дори да създадете централизиран работен поток или да се интегрирате с други системи за контрол на версиите, за да накарате старите си системи да работят.

Минуси

По-трудно за научаване: Концепциите на Git не винаги са интуитивни. Други системи за контрол на версиите възприемат подход, по-базиран на потребителския интерфейс. Общността Git предпочита да предпочита командния ред. Така че е по-голямо предизвикателство за нетехническите потребители да учат.

Носталгия по централизиран контрол на версиите: Бизнесът понякога се двоуми да използва Git, защото няма централизиран контрол. Но ако имате нужда от централизирано хранилище, винаги можете да проектирате работен поток, за да го внедрите.


Заключение

Git нараства популярността си поради стойността, която добавя към всеки екип за разработка. Дори ако работите сами по проект, наличието на надеждна история може да ви спести много време. Git е безплатен и полезен инструмент за всеки проект за разработване на софтуер.

Допълнително проучване:

Уебсайт на Git
Основи на Git
GitHub - Git хостинг сайт
BitBucket - Git хостинг сайт

Препратки:

Урок Сянка на Tomb Raider за Linux
Shadow of the Tomb Raider е дванадесетото допълнение към поредицата Tomb Raider - франчайз за екшън-приключенска игра, създаден от Eidos Montreal. Игр...
Как да увеличите FPS в Linux?
FPS означава Кадри в секунда. Задачата на FPS е да измерва честотата на кадрите при възпроизвеждане на видео или игрални изпълнения. С прости думи бро...
Топ Oculus App Lab Games
Ако сте собственик на слушалки на Oculus, тогава трябва да знаете за странично зареждане. Sideloading е процесът на инсталиране на несъхранявано съдър...