{"id":147,"date":"2026-04-02T17:40:52","date_gmt":"2026-04-02T10:40:52","guid":{"rendered":"https:\/\/abdullah.mablx.online\/?p=147"},"modified":"2026-04-02T21:01:56","modified_gmt":"2026-04-02T14:01:56","slug":"dasar-dasar-git","status":"publish","type":"post","link":"https:\/\/abdullah.mablx.online\/?p=147","title":{"rendered":"Dasar-Dasar Git"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">&gt; Command Git<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Cek Origin<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>git remote -v <\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Set Origin<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>git remote set-url origin https:\/\/github.com\/&lt;user&gt;\/&lt;repo&gt;<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Push Ke Repo<\/strong><\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>git push origin &lt;repo&gt;<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">&gt; cara edit commit git per file<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">Metode 1: Menggunakan git reset dan git add &#8211;patch<\/h3>\n\n\n\n<p>Kembalikan (unstage) perubahan dari commit terakhir (jika sudah di-commit):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git reset HEAD~1<\/code><\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Perintah ini akan memindahkan commit terakhir kembali ke status &#8220;staged\/unstaged&#8221; (area persiapan\/belum dipersiapkan), menjaga perubahan file Anda tetap ada, tetapi belum di-commit.<\/p>\n<\/blockquote>\n\n\n\n<h3 class=\"wp-block-heading\">2. Tambahkan perubahan secara interaktif (per file):<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>git add --patch\n# atau\ngit add -p<\/code><\/pre>\n\n\n\n<p>Perintah ini memulai sesi interaktif yang menampilkan &#8220;chunks&#8221; (bagian-bagian) perubahan dalam file Anda. Git akan menanyakan apakah Anda ingin menambahkan setiap chunk ke area staging.<\/p>\n\n\n\n<p>Ketik <strong>y<\/strong> (ya) untuk menambahkan chunk.<\/p>\n\n\n\n<p>Ketik <strong>n <\/strong>(tidak) untuk melewatkan chunk tersebut.<\/p>\n\n\n\n<p>Ketik <strong>s <\/strong>untuk membagi chunk menjadi bagian yang lebih kecil (jika perubahan dalam satu file besar).<\/p>\n\n\n\n<p>Ketik <strong>d <\/strong>untuk keluar atau melihat opsi lain.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. Buat commit pertama:<\/h3>\n\n\n\n<p>Setelah Anda menambahkan perubahan untuk file\/bagian file pertama ke area staging, buat commit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git commit -m \"Pesan commit untuk file pertama\"<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">4. Ulangi proses untuk file\/perubahan berikutnya:<\/h3>\n\n\n\n<p>Gunakan lagi <strong>git add -p<\/strong> untuk men-stage perubahan yang tersisa, lalu buat commit baru:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git commit -m \"Pesan commit untuk file kedua\"<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Metode 2: Menggunakan `git commit &#8211;amend<\/h2>\n\n\n\n<p>Metode ini digunakan jika Anda hanya ingin <em>mengubah<\/em> commit terakhir dengan menambahkan atau menghapus file tertentu dari commit tersebut.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Pastikan perubahan yang diinginkan ada di area kerja Anda.<\/strong><\/li>\n\n\n\n<li>Tambahkan file yang ingin Anda masukkan ke dalam commit:x Gunakan <strong>git add<\/strong> untuk file spesifik yang ingin Anda tambahkan ke commit terakhir:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>   git add nama_file_yang_ingin_diedit.txt<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li><strong>Ubah commit terakhir:<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>   git commit --amend --no-edit<\/code><\/pre>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>&#8211;amend<\/strong> akan menambahkan perubahan yang distage ke commit terakhir, menggantikan commit asli.<\/li>\n\n\n\n<li><strong>&#8211;no-edit<\/strong> akan menggunakan kembali pesan commit yang sama tanpa membuka editor teks. Jika Anda ingin mengubah pesannya, hilangkan <strong>&#8211;no-edit<\/strong>.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Metode 3: Menggunakan git rebase -i (Lanjutan)<\/h2>\n\n\n\n<p>Metode ini sangat kuat jika Anda perlu mengedit commit yang bukan commit terakhir (misalnya, commit ketiga dari belakang).<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Mulai rebase interaktif:<\/strong><\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>   git rebase -i HEAD~3\n   # Mengedit 3 commit terakhir<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>Tandai commit yang ingin Anda edit dengan <strong>edit <\/strong>(atau <strong>e<\/strong>): Editor teks akan terbuka. Ganti <strong>pick <\/strong>dengan <strong>edit <\/strong>di sebelah commit yang relevan, simpan, dan tutup editor.<\/li>\n\n\n\n<li><strong>Edit file yang diinginkan:<\/strong><br>Setelah rebase berhenti pada commit yang ditandai, gunakan perintah git normal (seperti <strong>git reset HEAD^<\/strong>, <strong>git add -p<\/strong>, <strong>git commit &#8211;amend<\/strong>) untuk mengubah isi commit tersebut.<\/li>\n\n\n\n<li><strong>Lanjutkan rebase:<\/strong><br>Setelah selesai, jalankan:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>   git rebase --continue<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">&gt; Cara Mengubah Commit\/Kepemilikan<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 KASUS 1 \u2014 Commit BELUM di-push ke GitHub<\/h2>\n\n\n\n<p>Paling aman &amp; simpel.<\/p>\n\n\n\n<p>Ubah author commit terakhir<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git commit --amend --author=\"Muhammad Abdullah &lt;email@anda.com&gt;\"<\/code><\/pre>\n\n\n\n<p>Lalu simpan (jika editor terbuka).<\/p>\n\n\n\n<p>Cek:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git log -1<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u2705 KASUS 2 &#8211; Commit SUDAH di-push, tapi hanya 1 commit terakhir<\/h2>\n\n\n\n<p>Perlu <strong>force push<\/strong> \u26a0\ufe0f<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git commit --amend --author=\"Muhammad Abdullah &lt;email@anda.com&gt;\"\ngit push --force<\/code><\/pre>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u26a0\ufe0f Jangan lakukan ini jika repo dipakai banyak orang tanpa koordinasi.<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">&gt; Cara Mengubah Intial commnit<\/h1>\n\n\n\n\n\n<p>\u27a1\ufe0f <strong>BISA<\/strong>, tapi harus <strong>rewrite history (ubah riwayat Git)<\/strong><\/p>\n\n\n\n<p>Karena itu <strong>commit lama<\/strong>, bukan commit terakhir.<\/p>\n\n\n\n<p>Cara PALING BENAR (git rebase)<\/p>\n\n\n\n<p>Misal commit itu ada di awal.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git log --oneline --reverse<\/code><\/pre>\n\n\n\n<p>Cari hash commit:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>xxxxxxx Initial commit AndikaBot WhatsApp Bot<\/code><\/pre>\n\n\n\n<p>Lalu rebase interaktif dari sebelum commit itu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git rebase -i --root<\/code><\/pre>\n\n\n\n<p>Nanti editor terbuka, contoh:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>pick xxxxxxx Initial commit AndikaBot WhatsApp Bot\npick yyyyyyy commit lainnya<\/code><\/pre>\n\n\n\n<p>Ubah baris commit itu jadi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>reword xxxxxxx Initial commit AndikaBot WhatsApp Bot<\/code><\/pre>\n\n\n\n<p>Atau kalau mau <strong>hapus total<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>drop xxxxxxx Initial commit AndikaBot WhatsApp Bot<\/code><\/pre>\n\n\n\n<p>Simpan \u2192 keluar editor<br>Lalu <strong>force push<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git push --force origin main<\/code><\/pre>\n\n\n\n<p>\u26a0\ufe0fWAJIB <strong>&#8211;force<\/strong> karena history berubah<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">&gt; Tag Github<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705JIKA YANG BERUBAH HANYA JUDUL RELEASE (PALING MUDAH)<\/h3>\n\n\n\n<p><strong>Ini tidak mengubah tag atau commit sama sekali<\/strong><\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Buka <strong>repository GitHub<\/strong><\/li>\n\n\n\n<li>Klik <strong>Releases<\/strong><\/li>\n\n\n\n<li>Pilih <strong>v3.0.1<\/strong><\/li>\n\n\n\n<li>Klik ikon \u270f\ufe0f <strong>Edit<\/strong><\/li>\n\n\n\n<li>Ubah:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>   AndikaBot v3.0.1 - Stable Release<\/code><\/pre>\n\n\n\n<p>menjadi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>   WhatsAppBot v3.0.1 - Stable Release<\/code><\/pre>\n\n\n\n<ol start=\"6\" class=\"wp-block-list\">\n<li>Klik <strong>Update release<\/strong><\/li>\n<\/ol>\n\n\n\n<p>\u2714\ufe0f <strong>Selesai \u2013 ini cara paling aman &amp; direkomendasikan<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u2705 JIKA NAMA ITU ADA DI PESAN TAG (ANNOTATED TAG)<\/h3>\n\n\n\n<p>Cek dulu:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git show v3.0.1<\/code><\/pre>\n\n\n\n<p>Jika masih tertulis <strong>AndikaBot<\/strong>, lakukan ini:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1\ufe0f\u20e3 Hapus tag lama (local &amp; remote)<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>git tag -d v3.0.1\ngit push origin :refs\/tags\/v3.0.1<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">2\ufe0f\u20e3 Buat ulang tag dengan nama baru<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>git tag -a v3.0.1 -m \"WhatsAppBot v3.0.1 - Stable Release\"\ngit push origin v3.0.1<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\u26a0\ufe0f PENTING (WAJIB BACA)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u274c <strong>Jangan hapus tag<\/strong> jika repo sudah dipakai banyak orang (breaking change)<\/li>\n\n\n\n<li>\u2714\ufe0f Untuk kasus <strong>judul saja<\/strong>, <strong>EDIT RELEASE<\/strong> di GitHub UI adalah solusi terbaik<\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>&gt; Command Git Cek Origin Set Origin Push Ke Repo &gt; cara edit commit git per file Metode 1: Menggunakan git reset dan git add &#8211;patch Kembalikan (unstage) perubahan dari commit terakhir (jika sudah di-commit): Perintah ini akan memindahkan commit terakhir kembali ke status &#8220;staged\/unstaged&#8221; (area persiapan\/belum dipersiapkan), menjaga perubahan file Anda tetap ada, tetapi [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":238,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,10],"tags":[],"class_list":["post-147","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-git","category-github"],"_links":{"self":[{"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/posts\/147","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=147"}],"version-history":[{"count":8,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/posts\/147\/revisions"}],"predecessor-version":[{"id":203,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/posts\/147\/revisions\/203"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=\/wp\/v2\/media\/238"}],"wp:attachment":[{"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=147"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=147"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/abdullah.mablx.online\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=147"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}