Різниця між Git та GitHub


280

Нещодавно я додав новий проект до Git за допомогою Eclipse, але не бачу, щоб проект відображався в моєму обліковому записі GitHub.

Чому вони мають однакову інформацію про облікові записи та різні сховища?

Хіба Git та GitHub не те саме?



2
Можливий дублікат розуміння основ Git та GitHub
tkruse

Відповіді:


366

Git - це система контролю версій, інструмент для управління історією вихідного коду.

GitHub - це сервіс хостингу для сховищ Git.

Отже, вони не одне і те ж: Git - це інструмент , GitHub - служба для проектів, які використовують Git .

Щоб отримати код у GitHub, подивіться тут .


22
Найбільше, що GitHub - це наслідок існування git і не єдиний хостинг-сервіс.
Йонас Шефер

83
Крім того, вам не доведеться користуватися віддаленою службою, наприклад, github, якщо все, що вам потрібно, це контроль версій - локальний git для цього просто чудовий. Віддалені сховища призначені для резервного копіювання та співпраці.
Тіло

3
Зауважте, що ви можете створити віддалений сховище git на багатьох веб-серверах, таких як webfaction vs heroku. Трохи складніше налаштувати цей github, але дешевший для великих команд.
Адріан Лопес

1
Ознайомтеся з цим порівнянням, щоб дізнатися більше про послуги Git хостингу. git-tower.com/blog/git-hosting-services-compared
Junaid

Я думаю, що використання слів "інструмент" та "послуга" неоднозначне для людей, незнайомих із проблемою (тобто люди гуглить із цим питанням). Можливо, "Git - це технологія управління вихідним кодом, тоді як GitHub - один із багатьох продуктів, що надають git як послугу для коду, який ви розміщуєте з ними".
Рашад Салех

68

У аналогії SVN Git замінює SVN, тоді як GitHub замінює SourceForge: P

Якщо цей проект ваш новий, то ви можете зробити на локальний Git, то ви можете натиснути на GitHub пізніше. Вам потрібно буде додати ваше репортаж GitHub як "віддалене сховище" у вашій настройці Git.

Здається, вони мають щось для користувачів Eclipse: http://eclipse.github.com/

В іншому випадку, якщо ви новачок у Git: http://git-scm.com/book


Які альтернативи використовувати онлайн GITHUB?
змінна

@variable Ви маєте на увазі щось на зразок локального сховища Git або власного розміщеного Git-сервера на зразок GitLab?
баккал

65

Що таке Git :

"Git - це безкоштовна та з відкритим кодом розповсюджена система управління версіями, призначена для швидкого та ефективного управління всіма проектами від маленьких до дуже великих проектів"

Git - це розподілена система контролю за одноранговими версіями. Кожен вузол в мережі є одноранговим, зберігаючи цілі сховища, які також можуть діяти як багатовузлові розподілені резервні копії. Не існує конкретної концепції центрального сервера, хоча вузли можуть бути головою або голими, беручи на себе роль, подібну центральному серверу в централізованих системах управління версіями.

Що таке GitHub :

"GitHub - веб- сервіс хостингу репозиторію Git , який пропонує всю функцію Git для розподіленого контролю версій та управління вихідним кодом (SCM), а також додає власні функції."

Github забезпечує контроль доступу та декілька функцій співпраці, таких як вікі, управління завданнями та відстеження помилок та запити щодо функцій для кожного проекту.

Вам не потрібен GitHub, щоб використовувати Git.

GitHub (і будь-яка інша локальна, віддалена або розміщена система) можуть бути одноранговими в одних і тих же розподілених версіях сховищ в рамках одного проекту.

Github дозволяє:

  • Поділіться своїми сховищами з іншими.
  • Доступ до сховищ інших користувачів.
  • Зберігайте віддалені копії ваших сховищ (сервери github) як резервну копію локальних копій.

скажіть, чому git називається розподіленим? тільки тому, що зміна магазину git встановлена ​​на локальному ПК? уточнюйте, будь ласка, значення цього розподіленого слова, тому що я новачок в git дякую
Mou

1
Вам потрібен Git, щоб користуватися GitHub?
користувач3187724

25

Git - засіб управління версіями, на якому створений GitHub.

GitHub - Наша компанія та назва нашого програмного забезпечення. Ми створюємо програмне забезпечення та веб-сайти, щоб допомогти вам приємно взаємодіяти з репозиторіями Git.

GitHub.com - веб-сайт, на якому ви входите, щоб переглянути сховища в Інтернеті.

GitHub Desktop - додаток, який можна встановити на комп’ютер, щоб допомогти синхронізувати локальний код з GitHub.com.

джерело: https://guides.github.com/introduction/getting-your-project-on-github/


15

Існує ряд очевидних відмінностей між Git та GitHub .

Сам Git дійсно орієнтований на найважливіші завдання контролю версій. Він підтримує історію фіксації, дозволяє змінювати зміни за допомогою команд скидання та повернення , а також дозволяє ділитися кодом з іншими розробниками за допомогою команд push і pull. Я думаю, що це найважливіші особливості, які кожен розробник хоче від інструменту DVCS.

Порівняльна діаграма Git та GitHub

Немає сфери повзання з Git

Але одне про Git - це те, що він справді просто лазерно орієнтований на управління вихідним кодом і більше нічого. Це приголомшливо, але це також означає, що інструменту бракує багатьох функцій, які хочуть організації. Наприклад, не існує вбудованих засобів управління користувачами, які б підтверджували, хто з'єднує та робить код. Інтеграція з такими речами, як Джира або Дженкінс , залишається за розробниками, щоб розібратися в таких речах, як гачки. В основному є багато місць, де можна інтегрувати функції. Ось куди приходять такі організації, як GitHub та GitLab.

Додаткові можливості GitHub

Основна "додана вартість" GitHub полягає в тому, що вона забезпечує хмарну платформу для Git. Це саме по собі дивовижно. Крім того, GitHub також пропонує:

  • просте відстеження завдань
  • настільний додаток GitHub
  • онлайн-редагування файлів
  • правила захисту галузі
  • функції запиту на тягу
  • організаційні засоби
  • межі взаємодії теплиць
  • підтримка смайлів !!! : octocat:: +1:

Тож GitHub дійсно додає полірування та вишуканість уже популярному інструменту DVCS.

Конкуренти Git та GitHub

Іноді, коли мова йде про розмежування між Git і GitHub, я думаю, що добре подивитися, з ким вони змагаються. Git конкурує в площині з такими інструментами, як Mercurial, Subversion і RTC, тоді як GitHub більше в просторі SaaS, конкуруючи з хмарними постачальниками, такими як GitLab та BitBucket Atlassian.

Не потрібно GitHub

Я завжди хочу нагадати людям, що вам не потрібні GitHub, GitLab або BitBucket, щоб використовувати Git. Git вийшов у світ у 2005 році? GitHub вийшов на сцену до 2007 або 2008 року, тому великі організації проводили розподілений контроль версій з Git задовго до того, як з'явилися постачальники хмарних хостингів. Тож Git просто чудово сам по собі. Для ефективної служби хмарного хостингу йому не потрібен хмарний сервіс. Але в той же час, наявність постачальника PaaS, безумовно, не зашкодить.

Робота з GitHub Desktop

До речі, ви згадали невідповідність між сховищами у вашому обліковому записі GitHub та репортажами, які у вас є на локальному рівні? Це зрозуміло. Поки ви не підключили і не здійснили витяг або витяг, місцеве Git repo не знає про віддалене репо GitHub. Сказавши це, GitHub надає інструмент, відомий як робочий стіл GitHub, який дозволяє вам підключитися до GitHub з настільного клієнта та легко завантажувати локальні Git repos на GitHub або ж приносити репост GitHub на локальну машину.

GitHub Desktop

Я не надто вражений інструментом, як колись ви знаєте Git, це не так важко зробити в оболонці Bash, але це варіант.

Боротьба між Git та GitHub


9

Простішим способом ми можемо сказати нижче - це різниця між git та git hub та VSTS.

git : - Ставтеся до git як до двигуна / технології для досягнення контролю версії джерела до нашого проекту. На відміну від TFS (знову ж таки централізованого контролю версій джерела) git поширюється технологією управління версіями. Це означає, що git насправді не вимагає наявності жодного сервера. Завдяки технології git ми можемо створити нашу власну локальну машину як сховище вихідного коду, не обов'язково завжди мати централізований сервер (у великому масштабі це може мати сервер Microsoft, який може натискати та зберігати наш вихідний код проекту). Але при SVN та TFS-формах управління версіями обов'язково сервер повинен бути пов'язаний з ним.

Наприклад, якщо я розробник вільного ланцюга, і я безпосередньо доповідаю своєму клієнтові, і інший розробник не бере участь, мені потрібно тримати контроль над кодом, щоб повернути назад (будь-яку версію) і ввести свої коди, і я не маю бюджет, щоб отримати сервер, і я не маю часу встановлювати та використовувати інший сервер на своїй машині як TFS-сервер і TFS-клієнт. Отже, оптимальним способом є встановлення git engine та використання моєї локальної машини як сховища для контролю версій за допомогою git.

GitHub : - як я вже говорив, git - це технологія, яка використовується з деякими командами / командними оболонками, тобто лише у git немає інтерфейсу користувача. GitHub - це Інтернет-продукт або онлайн-сховище, яке використовує технологію git для свого процесу та забезпечує управління версіями разом з іншими функціями, такими як відстеження помилок, управління проектами, підтримка управління квитками тощо. Іншими словами, Git Hub - це обгортка, побудована на технології git з інтерфейсом користувача та іншими функціональними можливостями іншої сторонньої фірми, це фактично продукт, який належить комусь або якійсь групі на основі технології git, коли git є відкритим кодом, а не продається. продукт.

VSTS : - VSTS - продукт Microsoft для онлайн-сховища, у якому зберігається контроль версії джерела, який можна розглядати як альтернативний git-концентратор. Починаючи з Microsoft, VSTS підтримує як технологію git, так і TFS (управління версіями команди TFVC-команда). Тому що TFS - це ще один старий продукт Microsoft для досягнення цієї версії управління. По суті, я припускаю, що VSTS поступово скидає TFS, оскільки git - найвідоміша технологія в цій галузі, і це відкритий код.


7

Простий англійською мовою:

  1. Всі вони контролюють джерела, як ми всі знаємо.
  2. За аналогією, якщо Git - це автономний комп'ютер, то GitHub - це мережа комп'ютерів, з'єднаних мережею Інтернет із дзвіночками та свистунками.
  3. Тож якщо ви не відкриєте акт GitHub і конкретно не скажете VSC або будь-якому редактору використовувати GitHub, ви побачите свій вихідний код там, інакше вони лише тут, - ваша локальна машина.

0

Git- Git є програмне забезпечення управління версіями , який встановлюється на вашу локальну систему. Для особистості, яка працює над проектом, Git виявляється відмінним програмним забезпеченням.

GitHub - Як згадувалося раніше, Git - це система управління версіями, яка відстежує зміни коду, в той час як GitHub - веб-сховище хостингу для управління версіями версії Git. Він забезпечує всі функції розподіленого контролю версій та управління вихідним кодом (SCM) функцій Git, одночасно доповнюючи його деякими властивостями.


0

Простіше кажучи, Git - це система управління версіями, яка дозволяє керувати та відслідковувати історію вихідного коду. GitHub - хмарний сервіс хостингу, який дозволяє керувати сховищами Git. Якщо у вас є проекти з відкритим кодом, які використовують Git, то GitHub створений, щоб допомогти вам краще керувати ними.


-3

Github потрібен, якщо ви хочете співпрацювати між розробниками. Якщо у вас одного учасника, git досить, переконайтеся, що ви регулярно створюєте резервні копії коду

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.