Rumah > Artikel > alat pembangunan > git gagal mengubah suai nama pengguna dan e-mel
Dalam proses menggunakan Git untuk kawalan versi, kami selalunya perlu mengkonfigurasi nama pengguna dan alamat e-mel. Maklumat ini digunakan untuk mengenal pasti pengirim. Walau bagaimanapun, dalam beberapa kes, kami mungkin perlu mengubah suai maklumat ini, seperti kerana kami telah menukar alamat e-mel peribadi kami, atau kerana kami ingin melindungi privasi kami. Walau bagaimanapun, apabila kami melaksanakan perintah Git config --global user.name dan Git config --global user.email untuk membuat perubahan, kami mendapati bahawa Git tidak bertindak balas dan tidak boleh mengubah suai nama pengguna dan e-mel. kenapa ni? Bagaimana untuk menyelesaikan masalah ini? Artikel ini akan menerangkannya secara terperinci.
Analisis Sebab
Pertama sekali, kita perlu menjelaskan dengan jelas bahawa Git ialah sistem kawalan versi yang digunakan untuk menyimpan dan mengurus kod Ia tidak mengemas kini maklumat pengirim secara automatik. Apabila pengguna membuat komitmen Git, mereka perlu memasukkan maklumat pengirim secara manual yang sepadan dengan setiap penyerahan.
Oleh itu, apabila kami mengemas kini nama pengguna dan alamat e-mel, kami perlu memasukkan maklumat baharu secara manual dalam setiap operasi penyerahan berikutnya, jika tidak nama pengguna dan alamat e-mel sebelum pengubahsuaian akan digunakan secara lalai. Oleh itu, secara lalai, Git tidak akan mengemas kini sejarah komit sebelumnya secara automatik, yang merupakan salah satu sebab mengapa penukaran nama pengguna dan alamat e-mel tidak berkuat kuasa.
Selain itu, kami juga mungkin tidak menyatakan nama pengguna dan alamat e-mel dengan betul dalam fail konfigurasi Git, atau kami tidak menambah pilihan --global, menyebabkan nama pengguna dan e-mel diubah suai maklumat hanya dalam projek semasa berkuat kuasa, bukan secara global.
Penyelesaian
1. Kemas kini nama pengguna baharu dan maklumat e-mel dalam fail konfigurasi Git
Kita boleh menggunakan arahan berikut dalam fail konfigurasi Git (~/.gitconfig ) Kemas kini nama pengguna dan maklumat e-mel baharu:
git config --global user.name "新的用户名" git config --global user.email "新的邮箱地址"
Pastikan nama pengguna dan alamat e-mel baharu yang anda masukkan betul-betul sepadan dengan maklumat pengguna yang ingin anda kemas kini. Selepas pengubahsuaian berjaya, hanya masukkan maklumat pengguna baharu apabila menyerahkan Git.
2 Kemas kini nama pengguna dan maklumat e-mel dalam sejarah penyerahan Git
Jika anda ingin mengemas kini nama pengguna dan maklumat e-mel dalam sejarah penyerahan Git, anda perlu menggunakan arahan berikut:
git filter-branch -f --env-filter "GIT_AUTHOR_NAME=新用户名; GIT_AUTHOR_EMAIL=新邮箱地址; GIT_COMMITTER_NAME=新用户名; GIT_COMMITTER_EMAIL=新邮箱地址;" HEAD
Arahan ini akan menulis semula maklumat committer dalam sejarah commit Git Dengan cara ini, maklumat committer yang lalu boleh dikemas kini.
Sila ambil perhatian bahawa arahan ini akan memadamkan semua rekod komit sebelum pengubahsuaian, jadi sila kendalikan dengan berhati-hati. Selain itu, sebelum melaksanakan arahan ini, anda mungkin ingin menyandarkan repositori Git anda untuk memastikan keselamatan data.
3 Tambah pilihan --global
Jika anda tidak menambah pilihan --global apabila melaksanakan arahan Git, nama pengguna dan maklumat e-mel yang diubah suai hanya akan berkuat kuasa dalam semasa projek dan tidak akan digunakan dalam projek semasa. Oleh itu, anda perlu menambah pilihan --global apabila melaksanakan arahan:
git config --global user.name "新用户名" git config --global user.email "新邮箱地址"
Dengan menambah pilihan --global, anda boleh memastikan bahawa maklumat pengguna yang anda ubah suai akan berkuat kuasa dalam semua projek Git.
Ringkasan
Dengan penyelesaian di atas, kami boleh mengubah suai nama pengguna dan alamat e-mel dalam Git dengan mudah. Apabila mengubah suai, pastikan bahawa maklumat pengguna baharu yang dimasukkan adalah betul-betul sama dengan maklumat yang ingin anda kemas kini. Sudah tentu, berhati-hati apabila menggunakan perintah cawangan penapis untuk mengemas kini nama pengguna dan maklumat e-mel dalam sejarah penyerahan Git Semasa operasi, anda perlu menyandarkan repositori Git anda untuk memastikan keselamatan data.
Atas ialah kandungan terperinci git gagal mengubah suai nama pengguna dan e-mel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!