Saya menginstal git menggunakan artikel ini . Sekarang saya ingin menghapus git. Bagaimana cara melakukannya?
Saya menginstal git menggunakan artikel ini . Sekarang saya ingin menghapus git. Bagaimana cara melakukannya?
Jawaban:
Saya menemukan solusinya di sini .
DIPERBARUI 2.11.2012
Jika Anda cukup pintar dan menggunakan beberapa awalan non-standar saat mengkonfigurasi Git sehingga telah diinstal di bawah hierarki tertentu, seperti di bawah / opt / git, maka hapus saja hierarki itu, secara rekursif.
Jika tidak, maka Anda bisa seperti ini:
1) Ambil tarball sumber persis versi yang Anda buat dan instal, bongkar.
2) Konfigurasikan persis seperti yang Anda lakukan dengan instalasi asli sehubungan dengan lokasi instalasi (awalan, exec-awalan dll); seharusnya Anda seharusnya tidak mengabaikan apa pun.
3) Buat direktori sementara untuk melakukan instalasi, seperti ini: $ mkdir / var / tmp / git
4) Instal Git melalui variabel DESTDIR yang tepat untuk menghasilkan: $ make DESTDIR = / var / tmp / git install Hirarki Git akan dibuat di bawah direktori sementara itu.
5) Gunakan hierarki yang dibuat untuk memutuskan file mana yang akan dihapus di bawah hirarki nyata ("/" itu sendiri).
Langkah terakhir adalah di mana "keajaiban" terjadi sehingga memberikan lebih banyak penjelasan. Misalnya, Anda bisa lari
$ find /var/tmp/git -type f -printf '/%P\n' | xargs -n 10 rm -f
(sebagai root) hapus file yang diinstal oleh mis-instalasi pertama ke sistem file root. Encantation di atas menggunakan hierarki / var / tmp / git untuk mencetak daftar file yang ditemukan, tetapi menggantikan awalan "/ var / tmp / git" dengan "/", sehingga "/ var / tmp / git" menggantikannya. / usr / bin / git "pada output akan berakhir dengan daftar" / usr / bin / git ". Daftar ini kemudian disalurkan ke xargs
yang menjalankan rm
nama file yang dibacanya dalam paket sepuluh (hanya untuk mengurangi jumlah doa rm
dengan satu urutan besarnya).
Setelah berurusan dengan file, jalankan
$ find /var/tmp/git -type d -printf '/%P\n'
untuk memeriksa daftar direktori yang diinstal. Ini memerlukan pendekatan manual jadi lihat saja daftar yang dihasilkan dan pikirkan yang mana dari Anda yang dapat Anda amankan rmdir
dari sistem Anda (ini akan menjadi direktori seperti "/ usr / libexec / git" atau sesuatu seperti ini; Anda mungkin tidak ingin menghapus "/ usr / share / man / mann" atau sesuatu bahkan jika itu kosong).
PS Di masa depan jangan pernah menginstal apa pun ke dalam sistem dengan menjalankan
make install
! Sebagian besar makefile hari ini tidak mendukung target "uninstall" karena mereka digunakan untuk menginstal ke lokasi awal pribadi untuk pengujian atau untuk membuat paket (.rpm, .deb dll) dan kemudian manajer paket menangani pembersihan. Jika Anda perlu menginstal sesuatu, coba cari paket resmi atau coba backport paket resmi lain dari versi OS Anda yang lebih baru, jika tersedia. Sebagai upaya terakhir, coba gunakan checkinstall
alat yang mencoba membuat paket biner dari proses Anda make install
. Ini menyebalkan, tapi masih lebih baik daripada telanjang make install
.
./configure
. sudo make && sudo make DESTDIR=/var/tmp/git install
. sudo find /var/tmp/git -type f -printf '/%P\n' | sudo xargs -n 10 rm -f
Saya baru saja menggunakan 2.691 baris Makefile. Memang tidak ada make uninstall. Drat.
Dalam hal ini solusinya mungkin menggunakan make rpm
opsi. Instal rpm (timpa semua file yang diinstal, yang harus identik dengan file yang sudah diinstal). Kemudian de-instal rpm.
Dalam semua kasus di masa depan membangun sebuah paket (RPM, yum, apa pun). Itu membuat pemeliharaan jadi lebih mudah.
make install
menempatkan hal-hal di awalan /usr/local
sedangkan rpm / deb / paket-Anda-di sini berjalan ./configure
dengan parameter yang berbeda sehingga file yang mereka instal berakhir dengan awalan /usr
.
make rpm
perintah. Apa yang harus saya lakukan selanjutnya?
man rpm
atau 'rpm --help
. Mungkin akan memberitahu Anda untuk menggunakannya rpm -i packagename.rpm
. Namun mungkin lebih baik meminta sysadmin di web payung untuk membantu Anda. Hanya ada begitu banyak yang bisa kita lakukan dari kejauhan.
make install
?