Perbedaan antara Git dan GitHub

280

Saya baru-baru ini menambahkan proyek baru ke Git menggunakan Eclipse, tetapi tidak melihat proyek muncul di akun GitHub saya.

Mengapa mereka memiliki informasi akun yang sama dan repositori yang berbeda?

Bukankah Git dan GitHub adalah hal yang sama?

Luis Andrés García
sumber
2
Kemungkinan rangkap dari Memahami dasar-dasar Git dan GitHub
tkruse

Jawaban:

366

Git adalah sistem kontrol revisi, alat untuk mengelola riwayat kode sumber Anda.

GitHub adalah layanan hosting untuk repositori Git.

Jadi mereka bukan hal yang sama: Git adalah alat , GitHub adalah layanan untuk proyek yang menggunakan Git .

Untuk mendapatkan kode Anda ke GitHub, lihat di sini .

schlicht
sumber
22
Terutama, GitHub adalah konsekuensi dari keberadaan git dan bukan satu-satunya layanan hosting.
Jonas Schäfer
83
Juga, Anda tidak harus menggunakan layanan jarak jauh seperti github jika yang Anda inginkan hanyalah kontrol versi - git lokal tidak masalah. Repositori jarak jauh adalah untuk cadangan dan kolaborasi.
Thilo
3
Perhatikan bahwa Anda dapat membuat repositori git jarak jauh di banyak server web seperti webfaction vs heroku. Agak sulit untuk mengkonfigurasi github itu, tetapi lebih murah untuk tim besar.
Adrian Lopez
1
checkout perbandingan ini untuk mengetahui lebih lanjut tentang Layanan Hosting Git. git-tower.com/blog/git-hosting-services-compared
Junaid
Saya pikir penggunaan kata "alat" dan "layanan" tidak jelas bagi orang yang tidak terbiasa dengan masalah ini (yaitu, orang yang menelusuri pertanyaan ini di Google). Mungkin "Git adalah teknologi untuk mengelola kode sumber, sementara GitHub adalah salah satu dari banyak produk yang menyediakan git sebagai layanan untuk kode yang Anda hosti dengannya."
Rashad Saleh
68

Dalam analogi SVN, Git menggantikan SVN, sementara GitHub menggantikan SourceForge: P

Jika proyek Anda ini baru, maka Anda masih bisa berkomitmen pada Git lokal Anda, kemudian Anda bisa mendorong ke GitHub nanti. Anda perlu menambahkan repo GitHub Anda sebagai 'repositori jarak jauh' di pengaturan Git Anda.

Mereka tampaknya memiliki sesuatu untuk pengguna Eclipse: http://eclipse.github.com/

Jika tidak, jika Anda baru mengenal Git: http://git-scm.com/book

bakkal
sumber
Apa alternatif untuk menggunakan GITHUB online?
variabel
@variable Maksud Anda sesuatu seperti repositori Git lokal, atau server Git yang di-host sendiri seperti GitLab?
bakkal
65

Apa itu Git :

"Git adalah sistem kontrol versi terdistribusi sumber terbuka dan gratis yang dirancang untuk menangani segala sesuatu dari proyek kecil hingga sangat besar dengan kecepatan dan efisiensi"

Git adalah sistem kontrol versi peer-peer terdistribusi. Setiap node dalam jaringan adalah peer, menyimpan seluruh repositori yang juga dapat bertindak sebagai back-up terdistribusi multi-node. Tidak ada konsep spesifik dari server pusat meskipun node dapat menjadi head-less atau 'bare', mengambil peran yang mirip dengan server pusat dalam sistem kontrol versi terpusat.

Apa itu GitHub :

"GitHub adalah layanan hosting repositori Git berbasis web , yang menawarkan semua kontrol revisi yang didistribusikan dan fungsionalitas manajemen kode sumber (SCM) dari Git serta menambahkan fitur-fiturnya sendiri."

Github menyediakan kontrol akses dan beberapa fitur kolaborasi seperti wiki, manajemen tugas, dan pelacakan bug serta permintaan fitur untuk setiap proyek.

Anda tidak perlu GitHub untuk menggunakan Git.

GitHub (dan sistem lokal lain, jarak jauh atau yang dihosting) semuanya dapat menjadi rekan dalam repositori versi terdistribusi yang sama dalam satu proyek.

Github memungkinkan Anda untuk:

  • Bagikan repositori Anda dengan orang lain.
  • Akses repositori pengguna lain.
  • Simpan salinan jarak jauh dari repositori Anda (server github) sebagai cadangan dari salinan lokal Anda.
BugShotGG
sumber
katakan padaku mengapa git disebut didistribusikan? hanya karena perubahan git store diatur dalam pc lokal? tolong jelaskan arti kata yang didistribusikan ini karena saya baru mengenal git. terima kasih
Mou
1
Apakah Anda memerlukan Git untuk menggunakan GitHub?
user3187724
25

Git - Alat kontrol versi yang GitHub dibangun di atas.

GitHub - Perusahaan kami dan nama perangkat lunak kami. Kami membangun perangkat lunak dan situs web untuk membantu Anda berinteraksi dengan repositori Git dengan cara yang baik.

GitHub.com - Situs web yang Anda masuki untuk melihat repositori online.

GitHub Desktop - Aplikasi yang dapat Anda instal di komputer untuk membantu Anda menyinkronkan kode lokal dengan GitHub.com.

sumber: https://guides.github.com/introduction/getting-your-project-on-github/

pengguna2340356
sumber
15

Ada sejumlah perbedaan yang jelas antara Git dan GitHub .

Git sendiri sangat fokus pada tugas-tugas penting dari kontrol versi. Ini mempertahankan sejarah komit, memungkinkan Anda untuk membalikkan perubahan melalui reset dan mengembalikan perintah, dan memungkinkan Anda untuk berbagi kode dengan pengembang lain melalui perintah push dan pull. Saya pikir itu adalah fitur penting yang diinginkan setiap pengembang dari alat DVCS.

Git versus GitHub Comparison Chart

Tidak Ada Cakupan Creep dengan Git

Tetapi satu hal tentang Git adalah bahwa itu hanya laser yang berfokus pada kontrol kode sumber dan tidak ada yang lain. Itu luar biasa, tetapi itu juga berarti alat ini tidak memiliki banyak fitur yang diinginkan organisasi. Misalnya, tidak ada fasilitas manajemen pengguna bawaan untuk mengautentikasi siapa yang menghubungkan dan melakukan kode. Integrasi dengan hal-hal seperti Jira atau Jenkins diserahkan kepada pengembang untuk mencari tahu melalui hal-hal seperti kait. Pada dasarnya, ada banyak tempat di mana fitur dapat diintegrasikan. Di situlah organisasi seperti GitHub dan GitLab masuk.

Fitur GitHub Tambahan

'Nilai tambah' utama GitHub adalah menyediakan platform berbasis cloud untuk Git. Itu sendiri luar biasa. Selain itu, GitHub juga menawarkan:

  • pelacakan tugas sederhana
  • aplikasi desktop GitHub
  • pengeditan file online
  • aturan perlindungan cabang
  • tarik fitur permintaan
  • alat organisasi
  • batas interaksi untuk hotheads
  • dukungan emoji !!! : octocat:: +1:

Jadi GitHub benar-benar menambahkan polesan dan penyempurnaan ke alat DVCS yang sudah populer.

Pesaing Git dan GitHub

Kadang-kadang ketika datang untuk membedakan antara Git dan GitHub, saya pikir itu baik untuk melihat siapa yang mereka lawan. Git bersaing di pesawat dengan alat-alat seperti Mercurial, Subversion dan RTC, sedangkan GitHub lebih di ruang SaaS bersaing dengan vendor cloud seperti GitLab dan BitBucket Atlassian.

Tidak Dibutuhkan GitHub

Satu hal yang saya selalu ingin mengingatkan orang adalah bahwa Anda tidak perlu GitHub atau GitLab atau BitBucket untuk menggunakan Git. Git dirilis pada 2005, apa? GitHub tidak muncul sampai 2007 atau 2008, jadi organisasi besar melakukan kontrol versi terdistribusi dengan Git jauh sebelum vendor cloud hosting datang. Jadi Git baik-baik saja sendiri. Tidak perlu layanan hosting awan untuk menjadi efektif. Tetapi pada saat yang sama, memiliki penyedia PaaS tentu saja tidak ada salahnya.

Bekerja dengan GitHub Desktop

Omong-omong, Anda menyebutkan ketidakcocokan antara repositori di akun GitHub Anda dan repo yang Anda miliki secara lokal? Itu bisa dimengerti. Sampai Anda terhubung dan melakukan tarikan atau pengambilan, repo Git lokal tidak tahu tentang repo GitHub jarak jauh. Karena itu, GitHub menyediakan alat yang dikenal sebagai desktop GitHub yang memungkinkan Anda untuk terhubung ke GitHub dari klien desktop dan dengan mudah memuat repo Git lokal ke GitHub, atau membawa repo GitHub ke mesin lokal Anda.

GitHub Desktop

Saya tidak terlalu terkesan dengan alat ini, karena begitu Anda mengenal Git, hal-hal ini tidak terlalu sulit dilakukan di shell Bash, tetapi ini merupakan pilihan.

Pertarungan antara Git dan GitHub

Cameron McKenzie
sumber
9

Secara sederhana dapat kita katakan di bawah ini adalah perbedaan antara git dan git hub dan VSTS.

git : - Perlakukan git sebagai mesin / teknologi untuk mencapai kontrol versi sumber ke proyek kami. Tidak seperti TFS (lagi-lagi kontrol versi sumber terpusat) git didistribusikan teknologi kontrol versi. Itu berarti git sebenarnya tidak memiliki mandat untuk memiliki server. Melalui teknologi git kita dapat membuat mesin lokal kita sendiri sebagai repositori kode sumber yang tidak diharuskan untuk memiliki server terpusat selalu (dalam skala besar dapat memiliki server Microsoft untuk mendorong dan menjaga kode sumber proyek kami). Tetapi dengan kontrol versi jenis SVN dan TFS, server wajib dikaitkan dengannya.

Sebagai contoh jika saya adalah pengembang lepas dan saya langsung melaporkan kepada klien saya dan tidak ada pengembang lain yang terlibat, saya perlu menjaga kontrol versi untuk mengembalikan kode saya (versi apa pun) dan mengkomit kode saya dan saya tidak memiliki anggaran untuk mendapatkan server dan saya tidak punya waktu untuk menginstal dan menggunakan server lain di mesin saya sebagai TFS server dan klien TFS. Jadi, cara optimal adalah menginstal mesin git dan menggunakan mesin lokal saya sebagai repositori untuk pengontrolan versi oleh git.

GitHub : - seperti yang saya katakan sebelumnya git adalah teknologi dan digunakan dengan beberapa perintah / perintah shell, yaitu git saja tidak memiliki UI. GitHub adalah produk online atau repositori online yang menggunakan teknologi git untuk proses mereka dan mencapai kontrol versi bersama dengan fungsi lain seperti pelacakan bug, manajemen Proyek, Dukungan manajemen tiket .. dll. Dengan kata lain Git Hub adalah pembungkus yang dibangun di atas teknologi git dengan UI dan fungsionalitas lain oleh perusahaan pihak ketiga lainnya, sebenarnya adalah produk yang dimiliki oleh seseorang atau beberapa kelompok berdasarkan teknologi git, di mana git bersifat open source, dan tidak dapat dipasarkan. produk.

VSTS : - VSTS adalah produk Microsoft untuk penyimpanan versi sumber penyimpanan repositori online yang dapat diperlakukan sebagai alternatif untuk hub git. Sejak dari Microsoft, VSTS mendukung teknologi git dan TFS (TFVC-team foundation version control). Karena TFS adalah produk Microsoft lama lainnya untuk mencapai kontrol versi ini. Biasanya saya berasumsi VSTS akan secara bertahap membuang TFS karena git adalah teknologi terkemuka di bidang ini dan merupakan open source.

Rinoy Ashokan
sumber
7

Dalam Bahasa Inggris:

  1. Mereka semua kontrol sumber seperti yang kita semua tahu.
  2. Dalam analogi, jika Git adalah komputer mandiri, maka GitHub adalah jaringan komputer yang terhubung oleh web dengan lonceng dan peluit.
  3. Jadi, kecuali Anda membuka akun GitHub dan secara khusus memberi tahu VSC atau editor apa pun untuk menggunakan GitHub, Anda akan melihat kode sumber Anda di atas sana kalau tidak mereka hanya ada di sini, - mesin lokal Anda.
Jeb50
sumber
0

Git- Git adalah software kontrol versi yang diinstal pada sistem lokal Anda. Untuk seorang individu yang mengerjakan proyek sendiri, Git terbukti menjadi perangkat lunak yang sangat baik.

GitHub- Seperti disebutkan sebelumnya, Git adalah sistem kontrol versi yang melacak perubahan kode, sementara GitHub adalah layanan hosting repositori kontrol versi Git berbasis web. Ini memberikan semua fungsi kontrol versi terdistribusi dan manajemen kode sumber (SCM) dari Git sambil menambahkan beberapa fitur-fiturnya sendiri.

Ankit Kumar Rajpoot
sumber
0

Sederhananya, Git adalah sistem kontrol versi yang memungkinkan Anda mengelola dan melacak riwayat kode sumber Anda. GitHub adalah layanan hosting berbasis cloud yang memungkinkan Anda mengelola repositori Git. Jika Anda memiliki proyek sumber terbuka yang menggunakan Git, maka GitHub dirancang untuk membantu Anda mengelola dengan lebih baik.

Dennis
sumber
-3

Github diperlukan jika Anda ingin berkolaborasi lintas pengembang. Jika Anda seorang kontributor tunggal sudah cukup, pastikan Anda membuat cadangan kode Anda secara teratur

TheFixer
sumber