{"id":1360,"date":"2019-09-30T00:23:09","date_gmt":"2019-09-29T17:23:09","guid":{"rendered":"https:\/\/www.linuxid.net\/post\/?p=1360"},"modified":"2025-04-18T15:21:35","modified_gmt":"2025-04-18T08:21:35","slug":"tutorial-membuat-dan-konfigurasi-git-server","status":"publish","type":"post","link":"https:\/\/www.linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/","title":{"rendered":"Tutorial Membuat dan Konfigurasi Git Server"},"content":{"rendered":"<p>Ketika berhubungan dengan Git hosting, Anda memiliki sejumlah opsi yang tersedia. GitHub, Gitlab dan Bitbucket adalah solusi populer, tetapi menjalankan Git server Anda sendiri merupakan alternatif yang patut dipertimbangkan.<\/p>\n<p>Menyiapkan Git Server memungkinkan Anda membuat repositori pribadi tanpa batasan<em>\u00a0\u201cfree plans\u201d<\/em>\u00a0dari pihak penyedia.<\/p>\n<p>Dalam panduan ini, kami akan menjelaskan cara menyiapkan Git server di Linux. Pengaturan ini bagus jika Anda memiliki sedikit repositori dan kolaboratornya mengerti teknologi. Jika tidak, Anda harus mempertimbangkan untuk menginstal aplikasi git self-hosted seperti <a href=\"https:\/\/www.linuxid.net\/post\/cara-install-dan-konfigurasi-gitea-di-ubuntu-18-04\/\">Gitea<\/a>, <a href=\"https:\/\/www.linuxid.net\/post\/cara-install-dan-konfigurasi-gogs-di-ubuntu-18-04\/\">Gogs<\/a>, atau <a href=\"https:\/\/www.linuxid.net\/post\/cara-install-dan-konfigurasi-gitlab-di-ubuntu-18-04\/\">Gitlab<\/a>.<\/p>\n<p>Git Server dapat diatur pada mesin Linux jarak jauh atau bahkan pada sistem lokal Anda.<\/p>\n<h2>Setting Git\u00a0Server<\/h2>\n<p>Langkah pertama adalah menginstal Git di server Anda.<\/p>\n<p>Jika Anda menggunakan Debian atau Ubuntu, segarkan indeks paket lokal dan<a href=\"https:\/\/www.linuxid.net\/post\/tutorial-install-dan-konfigurasi-git-di-debian-10-linux\/\"> instal git<\/a> dengan menjalankan perintah berikut sebagai <a href=\"https:\/\/www.linuxid.net\/post\/pengertian-perintah-sudo-di-linux\/\">user sudo<\/a>:<\/p>\n<pre>sudo apt update &amp;&amp; sudo apt install git&#13;\n<\/pre>\n<p>Untuk menginstal <a href=\"https:\/\/www.linuxid.net\/post\/tutorial-install-dan-konfigurasi-git-di-centos-8\/\">paket git<\/a> pada server CentOS ketik:<\/p>\n<pre>sudo yum install git&#13;\n<\/pre>\n<p>Selanjutnya, <a href=\"https:\/\/www.linuxid.net\/post\/tutorial-perintah-useradd-dan-contoh-penggunaan\/\">buat pengguna<\/a> baru yang akan mengelola repositori Git:<\/p>\n<pre>sudo useradd -r -m -U -d \/home\/git -s \/bin\/bash git&#13;\n<\/pre>\n<p>Direktori home user diatur ke <code>\/home\/git<\/code>. Semua repositori akan disimpan di bawah direktori ini. Kita tidak menetapkan kata sandi untuk user \u201cgit\u201d, login hanya dimungkinkan menggunakan ssh key.<\/p>\n<p>Beralih ke user \u201cgit\u201d menggunakan perintah <a href=\"https:\/\/www.linuxid.net\/post\/pengertian-perintah-su-switch-user-di-sistem-linux\/\"><code>su<\/code><\/a>:<\/p>\n<pre>sudo su - git&#13;\n<\/pre>\n<p>Jalankan perintah berikut untuk <a href=\"https:\/\/www.linuxid.net\/post\/membuat-direktori-di-linux-terminal-menggunakan-mkdir\/\">membuat direktori<\/a> SSH dan <a href=\"https:\/\/www.linuxid.net\/post\/cara-mengubah-file-permissions-dengan-chmod-di-linux\/\">mengatur izin<\/a> yang benar:<\/p>\n<pre>mkdir -p ~\/.ssh &amp;&amp; chmod 0700 ~\/.ssh&#13;\n<\/pre>\n<p>Buat file bernama <code>~\/.ssh\/authorized_keys<\/code> yang akan menampung SSH keys pengguna yang diotorisasi:<\/p>\n<pre>touch ~\/.ssh\/authorized_keys &amp;&amp; chmod 0600 ~\/.ssh\/authorized_keys&#13;\n<\/pre>\n<p>Pengaturan server selesai. Anda sekarang siap untuk membuat repositori Git pertama Anda.<\/p>\n<p>Jalankan perintah berikut untuk memulai repositori kosong baru:<\/p>\n<pre>git init --bare ~\/projectname.git&#13;\n<\/pre>\n<p>Anda dapat memberi nama direktori yang Anda inginkan. Yang penting adalah membuat repositori di bawah direktori home user \u201cgit\u201d.<\/p>\n<pre>Initialized empty Git repository in \/home\/git\/projectname.git\/<\/pre>\n<h2>Konfigurasi Lokal Git Repository<\/h2>\n<p>Untuk dapat push perubahan git lokal ke server Git, Anda harus menambahkan public key SSH user lokal Anda ke file \u201c<code>authorized_keys<\/code>\u201d pengguna jarak jauh git.<\/p>\n<p>Jika Anda telah membuat SSH key pair di sistem lokal Anda, Anda dapat menampilkan public key dengan mengetik:<\/p>\n<pre>cat ~\/.ssh\/id_rsa.pub&#13;\n<\/pre>\n<p>Outputnya akan terlihat seperti berikut<\/p>\n<pre>ssh-rsa AAAAB3NzaC1yc2EAAAADAQAABAACAQDd\/mnMzHwjUzK8g3ldfsfRpJuC16mhWamaXRk8ySQrD\/dzpbRLfDnZsLxCzRoq+ZzFHGwcQlJergtergdHGRrO8FE5jl3IWRRp+mP12qYw== <a href=\"https:\/\/www.linuxid.net\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"2b4f4a454a454c6b4742455e53424f05454e5f\">[email\u00a0protected]<\/a><\/pre>\n<p>Jika Anda mendapatkan pesan error yang mengatakan <code>No such file or directory<\/code>, itu berarti Anda tidak memiliki SSH key pair yang dihasilkan pada mesin lokal Anda.<\/p>\n<p>Untuk menghasilkan <a href=\"https:\/\/www.linuxid.net\/post\/cara-konfigurasi-login-ssh-tanpa-password\/\">SSH key pair<\/a> baru gunakan perintah berikut:<\/p>\n<pre>ssh-keygen -t rsa -b 4096 -C \"<a href=\"https:\/\/www.linuxid.net\/cdn-cgi\/l\/email-protection\" class=\"__cf_email__\" data-cfemail=\"91e8fee4e3cef4fcf0f8fdd1f5fefcf0f8ffbff2fefc\">[email\u00a0protected]<\/a>\"&#13;\n<\/pre>\n<p>Salin output dari perintah <a href=\"https:\/\/www.linuxid.net\/post\/menggunakan-command-cat-pada-linux-terminal\/\"><code>cat<\/code> <\/a>di atas dan kembali ke konsol Git server.<\/p>\n<p>Di server, buka <a href=\"https:\/\/www.linuxid.net\/post\/cara-menggunakan-text-editor-nano-di-baris-perintah-linux\/\">teks editor<\/a> Anda dan paste public key yang Anda salin dari mesin lokal Anda ke file <code>~\/.ssh\/authorized_keys<\/code>:<\/p>\n<pre>sudo nano \/home\/git\/.ssh\/authorized_keys&#13;\n<\/pre>\n<p>Seluruh teks public key harus dalam satu baris.<\/p>\n<p>Kita berasumsi bahwa paket Git sudah diinstal pada mesin lokal Anda. Jika tidak, instal dengan cara yang sama seperti yang dijelaskan di bagian sebelumnya.<\/p>\n<p>Jika Anda memiliki proyek tidak berversi yang ada, navigasikan ke direktori proyek. Jika Anda memulai dari awal, buat direktori proyek, dan arahkan ke sana:<\/p>\n<pre>cd \/path\/to\/local\/project&#13;\n<\/pre>\n<p>Inisialisasi repositori git:<\/p>\n<pre>git init .&#13;\n<\/pre>\n<p>Langkah terakhir adalah menambahkan <a href=\"https:\/\/www.linuxid.net\/post\/cara-menambahkan-git-remote\/\">git remote<\/a> ke repositori lokal Anda:<\/p>\n<pre>git remote add origin git@git_server_ip:projectname.git&#13;\n<\/pre>\n<p>Jangan lupa untuk mengganti <code>git_server_ip<\/code> dengan hostname atau alamat IP server Git Anda.<\/p>\n<p>Untuk memverifikasi bahwa semuanya diatur dengan benar, <a href=\"https:\/\/www.linuxid.net\/post\/perintah-touch-di-linux-terminal-dan-contoh-penggunaan\/\">buat file<\/a> untuk testing:<\/p>\n<pre>touch test_file&#13;\n<\/pre>\n<p>Tambahkan perubahan ke staging area<\/p>\n<pre>git add .&#13;\n<\/pre>\n<p>Commit perubahan:<\/p>\n<pre>git commit -m \"descriptive message\"&#13;\n<\/pre>\n<p>Push perubahan repositori lokal ke repositori jarak jauh:<\/p>\n<pre>git push -u origin master&#13;\n<\/pre>\n<p>Jika semuanya sudah diatur dengan benar, output akan terlihat seperti ini:<\/p>\n<pre>Counting objects: 3, done.&#13;\nWriting objects: 100% (3\/3), 218 bytes | 218.00 KiB\/s, done.&#13;\nTotal 3 (delta 0), reused 0 (delta 0)&#13;\nTo git_server_ip:projectname.git&#13;\n * [new branch]      master -&gt; master&#13;\nBranch 'master' set up to track remote branch 'master' from 'origin'.<\/pre>\n<p>Untuk menambahkan kolaborator baru, cukup salin public SSH key ke file\u00a0user\u00a0 \u201cgit\u201d di <code>~\/.ssh\/authorized_keys<\/code>.<\/p>\n<p>Anda dapat menggunakan langkah-langkah yang sama untuk membuat repositori baru. Penting untuk dicatat bahwa repositori jarak jauh harus ada sebelum Anda menambahkan remote git ke repositori lokal Anda.<\/p>\n<h2>Kesimpulan<\/h2>\n<p>Dalam tutorial ini, kita telah menunjukkan kepada Anda cara mengatur Git server pribadi Anda dan membuat repositori.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ketika berhubungan dengan Git hosting, Anda memiliki sejumlah opsi yang tersedia. GitHub, Gitlab dan Bitbucket&hellip;<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[107],"tags":[125],"class_list":["post-1360","post","type-post","status-publish","format-standard","hentry","category-other","tag-git"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Tutorial Membuat dan Konfigurasi Git Server - Linuxid<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tutorial Membuat dan Konfigurasi Git Server - Linuxid\" \/>\n<meta property=\"og:description\" content=\"Ketika berhubungan dengan Git hosting, Anda memiliki sejumlah opsi yang tersedia. GitHub, Gitlab dan Bitbucket&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/\" \/>\n<meta property=\"og:site_name\" content=\"Linuxid\" \/>\n<meta property=\"article:published_time\" content=\"2019-09-29T17:23:09+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-04-18T08:21:35+00:00\" \/>\n<meta name=\"author\" content=\"xsand\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"xsand\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/\",\"url\":\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/\",\"name\":\"Tutorial Membuat dan Konfigurasi Git Server - Linuxid\",\"isPartOf\":{\"@id\":\"https:\/\/linuxid.net\/post\/#website\"},\"datePublished\":\"2019-09-29T17:23:09+00:00\",\"dateModified\":\"2025-04-18T08:21:35+00:00\",\"author\":{\"@id\":\"https:\/\/linuxid.net\/post\/#\/schema\/person\/e6642d26041eab9fef2677e204e89d79\"},\"breadcrumb\":{\"@id\":\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Beranda\",\"item\":\"https:\/\/linuxid.net\/post\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tutorial Membuat dan Konfigurasi Git Server\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/linuxid.net\/post\/#website\",\"url\":\"https:\/\/linuxid.net\/post\/\",\"name\":\"Linuxid\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/linuxid.net\/post\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"id\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/linuxid.net\/post\/#\/schema\/person\/e6642d26041eab9fef2677e204e89d79\",\"name\":\"xsand\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/linuxid.net\/post\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/cc8513768e15fa0758099a0ba5b898f3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/cc8513768e15fa0758099a0ba5b898f3?s=96&d=mm&r=g\",\"caption\":\"xsand\"},\"url\":\"https:\/\/www.linuxid.net\/post\/author\/xsand\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Tutorial Membuat dan Konfigurasi Git Server - Linuxid","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/","og_locale":"id_ID","og_type":"article","og_title":"Tutorial Membuat dan Konfigurasi Git Server - Linuxid","og_description":"Ketika berhubungan dengan Git hosting, Anda memiliki sejumlah opsi yang tersedia. GitHub, Gitlab dan Bitbucket&hellip;","og_url":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/","og_site_name":"Linuxid","article_published_time":"2019-09-29T17:23:09+00:00","article_modified_time":"2025-04-18T08:21:35+00:00","author":"xsand","twitter_card":"summary_large_image","twitter_misc":{"Ditulis oleh":"xsand","Estimasi waktu membaca":"4 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/","url":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/","name":"Tutorial Membuat dan Konfigurasi Git Server - Linuxid","isPartOf":{"@id":"https:\/\/linuxid.net\/post\/#website"},"datePublished":"2019-09-29T17:23:09+00:00","dateModified":"2025-04-18T08:21:35+00:00","author":{"@id":"https:\/\/linuxid.net\/post\/#\/schema\/person\/e6642d26041eab9fef2677e204e89d79"},"breadcrumb":{"@id":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/linuxid.net\/post\/tutorial-membuat-dan-konfigurasi-git-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Beranda","item":"https:\/\/linuxid.net\/post\/"},{"@type":"ListItem","position":2,"name":"Tutorial Membuat dan Konfigurasi Git Server"}]},{"@type":"WebSite","@id":"https:\/\/linuxid.net\/post\/#website","url":"https:\/\/linuxid.net\/post\/","name":"Linuxid","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/linuxid.net\/post\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"id"},{"@type":"Person","@id":"https:\/\/linuxid.net\/post\/#\/schema\/person\/e6642d26041eab9fef2677e204e89d79","name":"xsand","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/linuxid.net\/post\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/cc8513768e15fa0758099a0ba5b898f3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cc8513768e15fa0758099a0ba5b898f3?s=96&d=mm&r=g","caption":"xsand"},"url":"https:\/\/www.linuxid.net\/post\/author\/xsand\/"}]}},"_links":{"self":[{"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/posts\/1360","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/comments?post=1360"}],"version-history":[{"count":1,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/posts\/1360\/revisions"}],"predecessor-version":[{"id":2814,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/posts\/1360\/revisions\/2814"}],"wp:attachment":[{"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/media?parent=1360"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/categories?post=1360"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxid.net\/post\/wp-json\/wp\/v2\/tags?post=1360"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}