GNU/Linux >> Belajar Linux >  >> Linux

Kesalahan saat menggunakan pembantu kredensial Git dengan gnome-keyring sebagai Sudo

Selain penggunaan sudo, perhatikan bahwa pada tahun 2016, libgnome-keyring khusus untuk GNOME dan sekarang sudah tidak digunakan lagi (sebenarnya sejak Januari 2014).

Opsi 2022:git-credential-manager

Microsoft menyediakan bantuan kredensial lintas platform bernama GCM (Git Credential Manager) , yang dapat Anda instal (tidak perlu membuatnya) dan mengonfigurasi:

git-credential-manager-core configure

Anda memerlukan Git 2.27+ untuk menggunakannya.

Opsi 2016:git-credential-libsecret

Git 2.11+ (Q4 2016) menyertakan pembantu kredensial baru menggunakan libsecret .

Lihat komit 87d1353 (09 Okt 2016) oleh Mantas Mikulėnas (grawity ).

Pembantu kredensial baru yang berbicara melalui "libsecret " dengan implementasi XDG Secret Service API telah ditambahkan ke contrib/credential/ .

ini menggunakan libsecret yang dapat mendukung implementasi lain dari XDG SecretService API.

Namun pada tahun 2022, hal ini tidak diperlukan lagi. Lihat di atas

Seperti dicatat oleh mati865 di komentar:

Perlu dicatat bahwa beberapa distro seperti Arch dan Fedora menyediakan pembantu yang tersedia sebagai biner dan sumber.

  • Libsecret binary di Arch:/usr/lib/git-core/git-credential-libsecret , dan
  • Libsecret binary di Fedora:/usr/libexec/git-core/git-credential-libsecret .

Catatan: Seperti yang ditambahkan @rugk di komentar, untuk Fedora dan Git v2.25.2-1 atau lebih tinggi, Anda perlu menginstal paket tambahan dengan biner tersebut, karena telah dipisahkan dari paket git utama:

dnf install git-credential-libsecret

Menggunakan sudo menjalankan perintah sebagai root. Ini seperti meminta sysadmin Anda, jika ada, untuk menjalankan perintah untuk Anda. root pengguna tidak dimaksudkan untuk melakukan apa saja yang berhubungan dengan pengembangan, dan karena itu git adalah tidak dimaksudkan untuk digunakan sebagai root.

Setelah Anda menjalankan perintah sebagai pengguna lain (root atau lainnya), diharapkan pengguna lain ini tidak dapat berkomunikasi secara normal dengan pengguna biasa Anda (khususnya, ia tidak menemukan gnome-keyring-daemon Anda di sini).

Jadi, jawabannya adalah:"jangan lakukan itu". Jika Anda benar-benar perlu mengkloning di direktori tertentu, berikan diri Anda izin pada direktori itu seperti yang disarankan dalam jawaban CodeWizard. Sebenarnya, jika Anda perlu mengkloning di direktori di mana Anda tidak memiliki izin, tanyakan pada diri Anda apakah Anda melakukan kesalahan:pada prinsipnya, ini tidak boleh terjadi (tebakan saya adalah:Anda sudah menggunakan sudo terlalu banyak di masa lalu dan inilah alasan mengapa Anda memiliki direktori yang dapat ditulisi di sana-sini).


Saya terkadang perlu menjalankan sudo git clone karena terkadang direktori tempat saya perlu membuat klon memerlukannya. Bantuan apa pun akan dihargai

Folder tempat Anda mencoba mengkloning repositori dibuat oleh root sehingga Anda tidak memiliki izin untuk menulis atau membuat folder di bawahnya kecuali Anda root (sudo ), setel izin (chmod atau chown ) dan Anda akan dapat mengkloning ke folder tersebut.

chmod 755 /path

Linux
  1. Menggunakan Notify-send Dengan Cron?

  2. Debian – Kesalahan Relokasi Menggunakan Sudo Apt?

  3. Keluaran Mail Cron Hanya Saat Git Melempar Kesalahan Nyata?

  1. Git Pelengkapan otomatis?

  2. Kesalahan Kunci Ssh Tidak Valid Di Juju Saat Menggunakannya Dengan Maas?

  3. dynamic_cast gagal saat digunakan dengan dlopen/dlsym

  1. Bagaimana menjaga variabel lingkungan saat menggunakan sudo

  2. Mengapa $LD_LIBRARY_PATH saya tidak disetel saat menggunakan layar dengan bash?

  3. perintah tidak ditemukan saat menggunakan sudo