Rumah alat pembangunan git Bagaimana untuk memadamkan komitmen sejarah dalam git

Bagaimana untuk memadamkan komitmen sejarah dalam git

Apr 26, 2023 am 09:16 AM

Dalam beberapa tahun kebelakangan ini, Git telah menjadi semakin popular di kalangan pasukan pembangunan sebagai alat kawalan versi yang berkuasa. Walau bagaimanapun, apabila menggunakan Git, kadangkala komit buruk mungkin muncul, dan komit ini mungkin memberi kesan negatif pada projek. Cara memadamkan komitmen sejarah ini telah menjadi masalah yang sering dihadapi oleh pengguna Git. Artikel ini akan memperincikan cara memadamkan komitmen sejarah dalam Git.

1. Sejarah penyerahan Git

Sejarah penyerahan Git terdiri daripada banyak penyerahan. Setiap kali anda membuat komit dalam Git, komit baharu dibuat. Setiap penyerahan mempunyai pengecam sendiri (SHA) dan mengandungi maklumat seperti pengarang penyerahan, tarikh dan perihalan penyerahan.

Anda boleh melihat sejarah komit dalam Git melalui baris arahan Git atau alat klien Git. Contohnya, menggunakan baris arahan Git anda boleh menggunakan arahan berikut untuk melihat sejarah komit projek ini:

git log
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Arahan ini akan menyenaraikan semua komit pada cawangan semasa, disenaraikan dalam susunan terbalik. Setiap komit mempunyai SHA sendiri, nama dan e-mel komitter, tarikh komit dan mesej komit.

2. Mengapa memadamkan penyerahan sejarah

Dalam proses pembangunan kolaboratif, terdapat banyak faktor manusia yang menyebabkan berlakunya penyerahan yang tidak baik. "Penyerahan Buruk" ialah Penyerahan yang mungkin mengandungi ralat, kelemahan keselamatan, maklumat sensitif, dsb. Jika komitmen buruk ini telah digabungkan ke dalam cawangan talian utama, ia mungkin memberi kesan negatif pada bahagian lain projek.

Selain itu, jika anda memasukkan kandungan yang anda tidak mahu orang lain lihat sebelum menyerahkan kod, seperti kata laluan, kunci API dan maklumat sensitif lain, ia mungkin terdedah selepas penyerahan. Pada masa ini, memadamkan penyerahan sejarah ialah cara untuk melindungi privasi pengguna.

3. Cara memadamkan komitmen sejarah dalam Git

Dalam Git, terdapat dua cara untuk memadamkan komitmen sejarah: menulis semula sejarah dan menggunakan mekanisme penapisan Git.

  1. Menulis semula sejarah

Menulis semula sejarah sebenarnya dicapai dengan mengubah suai komitmen sejarah. Ini bermakna membuat perubahan dan penyusunan semula kepada komitmen yang telah diterbitkan. Berikut ialah langkah-langkah untuk memadam sejarah komit Git:

(1) Gunakan arahan berikut untuk melihat sejarah komit:

git log
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

(2) Cari SHA komit yang anda mahu untuk memadam dan merekodkannya.

(3) Gunakan arahan berikut untuk menulis semula sejarah. Dalam arahan ini, gantikan SHA dengan SHA bagi komit yang anda mahu padamkan:

git rebase -i SHA^
Salin selepas log masuk

Perintah ini akan membuka editor dengan senarai semua komit sejak komit terakhir komit yang dipilih .

(4) Tukar "pilih" di hadapan komit yang ingin anda padamkan kepada "jatuhkan" atau gunakan tanda paun untuk mengulas keluar baris. Simpan dan tutup editor.

(5) Jalankan arahan berikut untuk memaksa menulis ganti komit dalam Git:

git push --force
Salin selepas log masuk

Akhir sekali, anda boleh menggunakan arahan berikut untuk mengesahkan sama ada anda berjaya memadamkan sejarah komit:

git log
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
  1. Gunakan mekanisme penapisan Git

Dalam Git, arahan cawangan penapis boleh membantu anda memadamkan sejarah komit. Perintah ini menyalin keseluruhan repositori dan menggunakan penapis yang ditentukan untuk setiap komit. Berikut ialah langkah untuk menggunakan mekanisme penapisan Git untuk memadam sejarah komit Git:

(1) Gunakan arahan berikut untuk mencipta repositori salinan:

git clone --mirror <Git URL>
Salin selepas log masuk

(2) Gunakan yang berikut arahan untuk memasuki repositori salinan:

cd <repository name>.git
Salin selepas log masuk

(3) Gunakan arahan berikut untuk memadamkan penyerahan sejarah:

git filter-branch --force --index-filter "git rm --cached --ignore-unmatch <filename>" --prune-empty --tag-name-filter cat -- --all
Salin selepas log masuk

Arahan ini digunakan untuk memadamkan penyerahan sejarah bagi fail bernama < ;nama fail>. Perintah ini boleh diubah mengikut keperluan. Di sini, --tag-name-filter cat digunakan untuk membetulkan tag. Akhirnya, arahan ini akan digunakan untuk semua cawangan.

(4) Gunakan arahan berikut untuk menolak perubahan pada repositori Git:

git push --all --force
Salin selepas log masuk

Akhir sekali, anda boleh menggunakan arahan berikut untuk mengesahkan sama ada sejarah komit berjaya dipadamkan:

git log
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

4. Ringkasan

Anda boleh memadamkan komitmen sejarah dalam Git dengan menulis semula sejarah atau menggunakan mekanisme penapisan Git. Walau bagaimanapun, sebelum memadamkan sejarah komit, anda harus berfikir dengan teliti dan memastikan semua ahli pasukan memahami kesan perubahan itu. Selain itu, repositori Git harus dibersihkan dengan kerap sebelum menggabungkan perubahan untuk mengurangkan overhed storan.

Atas ialah kandungan terperinci Bagaimana untuk memadamkan komitmen sejarah dalam git. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Git vs Github: Kawalan Versi dan Kod Hosting Git vs Github: Kawalan Versi dan Kod Hosting Apr 11, 2025 am 11:33 AM

Git adalah sistem kawalan versi, dan GitHub adalah platform hosting kod berasaskan Git. Git digunakan untuk menguruskan versi kod dan menyokong operasi tempatan; Github menyediakan alat kerjasama dalam talian seperti Penjejakan Isu dan PullRequest.

Adakah git sama dengan GitHub? Adakah git sama dengan GitHub? Apr 08, 2025 am 12:13 AM

Git dan GitHub bukan perkara yang sama. Git adalah sistem kawalan versi, dan GitHub adalah platform hosting kod berasaskan Git. Git digunakan untuk menguruskan versi kod, dan GitHub menyediakan persekitaran kerjasama dalam talian.

Adakah GitHub sukar dipelajari? Adakah GitHub sukar dipelajari? Apr 02, 2025 pm 02:45 PM

GitHub tidak sukar untuk dipelajari. 1) Menguasai Pengetahuan Asas: GitHub adalah sistem kawalan versi berasaskan Git yang membantu mengubah perubahan kod dan pembangunan kolaboratif. 2) Memahami Fungsi Teras: Rekod Kawalan Versi Setiap Penyerahan, Menyokong Kerja Tempatan dan Penyegerakan Jauh. 3) Ketahui cara menggunakan: dari membuat repositori untuk menolak komitmen, menggunakan cawangan dan tarik permintaan. 4) Menyelesaikan masalah biasa: seperti gabungan konflik dan lupa untuk menambah fail. 5) Amalan Pengoptimuman: Gunakan mesej penyerahan yang bermakna, membersihkan cawangan, dan menguruskan tugas menggunakan papan projek. Melalui amalan dan komunikasi komuniti, lengkung pembelajaran Github tidak curam.

Cara mengemas kini kod dalam git Cara mengemas kini kod dalam git Apr 17, 2025 pm 04:45 PM

Langkah -langkah untuk mengemas kini kod git: lihat kod: klon git https://github.com/username/repo.git Dapatkan perubahan terkini: Git mengambil Perubahan Gabungan: Git Gabungan Asal/Master Push Change (Pilihan): Git Push Origin Master

Cara menggunakan komitmen git Cara menggunakan komitmen git Apr 17, 2025 pm 03:57 PM

Git Commit adalah arahan yang merekodkan fail perubahan kepada repositori git untuk menyelamatkan gambar keadaan semasa projek. Cara menggunakannya adalah seperti berikut: Tambahkan perubahan ke kawasan penyimpanan sementara Tulis mesej penyerahan ringkas dan bermaklumat untuk menyimpan dan keluar dari mesej penyerahan untuk melengkapkan penyerahan secara opsyen: Tambahkan tandatangan untuk log penyerahan Git Log untuk melihat kandungan penyerahan

Cara memuat turun projek git ke tempatan Cara memuat turun projek git ke tempatan Apr 17, 2025 pm 04:36 PM

Untuk memuat turun projek secara tempatan melalui Git, ikuti langkah -langkah ini: pasang git. Navigasi ke direktori projek. Pengklonan Repositori Jauh menggunakan arahan berikut: Git Clone https://github.com/username/repository-name.git

Apa yang Harus Dilakukan Sekiranya Muat turun Git Tidak Aktif Apa yang Harus Dilakukan Sekiranya Muat turun Git Tidak Aktif Apr 17, 2025 pm 04:54 PM

Selesaikan: Apabila kelajuan muat turun git perlahan, anda boleh mengambil langkah -langkah berikut: periksa sambungan rangkaian dan cuba menukar kaedah sambungan. Mengoptimumkan Konfigurasi Git: Meningkatkan Saiz Penampan Pos (Git Config-Global Http.PostBuffer 524288000), dan mengurangkan had berkelajuan rendah (git config --global http.lowspeedlimit 1000). Gunakan proksi Git (seperti Git-Proxy atau Git-LFS-Proxy). Cuba gunakan klien Git yang berbeza (seperti sourcetree atau github desktop). Periksa perlindungan kebakaran

Sekiranya saya meletakkan git atau github pada resume saya? Sekiranya saya meletakkan git atau github pada resume saya? Apr 04, 2025 am 12:04 AM

Pada resume anda, anda harus memilih untuk menulis git atau github berdasarkan keperluan kedudukan anda dan pengalaman peribadi. 1. Jika kedudukan memerlukan kemahiran git, sorot git. 2. Jika kedudukan nilai penyertaan komuniti, tunjukkan GitHub. 3. Pastikan untuk menerangkan pengalaman penggunaan dan kes -kes projek secara terperinci dan berakhir dengan ayat lengkap.

See all articles