Πώς να αποθηκεύσετε το όνομα χρήστη και τον κωδικό πρόσβασης στο Git;

Θέλω να χρησιμοποιήσω ένα push και pull αυτόματα στο GitExtension, χωρίς να πληκτρολογώ τον χρήστη και τον κωδικό μου σε μια προτροπή, κάθε φορά.

Πώς μπορώ λοιπόν να αποθηκεύσω τα διαπιστευτήριά μου στο GIT;

Λύση

Εκτέλεση

git config --global credential.helper store

then

git pull

να δώσετε ένα όνομα χρήστη και έναν κωδικό πρόσβασης και αυτά τα στοιχεία θα θυμούνται αργότερα. Τα διαπιστευτήρια αποθηκεύονται σε ένα αρχείο στο δίσκο, με δικαιώματα δίσκου "απλά αναγνώσιμα/εγγράψιμα από τον χρήστη" αλλά ακόμα σε απλό κείμενο.

Εάν θέλετε να αλλάξετε τον κωδικό πρόσβασης αργότερα

git pull

Θα αποτύχει, επειδή ο κωδικός πρόσβασης είναι λανθασμένος, το git στη συνέχεια αφαιρεί τον παραβάτη χρήστη+κωδικό πρόσβασης από το αρχείο ~/.git-credentials, οπότε τώρα ξαναεκτελέστε το

git pull

για να δώσετε έναν νέο κωδικό πρόσβασης, ώστε να λειτουργήσει όπως προηγουμένως.

Σχόλια (13)

Μπορείτε να χρησιμοποιήσετε το git config για να ενεργοποιήσετε την αποθήκευση διαπιστευτηρίων στο git.

git config --global credential.helper store

Όταν εκτελείτε αυτή την εντολή, την πρώτη φορά που θα τραβήξετε ή θα προωθήσετε από το απομακρυσμένο αποθετήριο, θα ερωτηθείτε για το όνομα χρήστη και τον κωδικό πρόσβασης.

Στη συνέχεια, για τις επόμενες επικοινωνίες με το απομακρυσμένο αποθετήριο δεν χρειάζεται να δώσετε το όνομα χρήστη και τον κωδικό πρόσβασης.

Η μορφή αποθήκευσης είναι ένα αρχείο .git-credentials, αποθηκευμένο σε απλό κείμενο.

Επίσης, μπορείτε να χρησιμοποιήσετε άλλους βοηθούς για το git config credential.helper, δηλαδή την κρυφή μνήμη:

git config credential.helper cache 

η οποία δέχεται μια προαιρετική παράμετρο timeout, που καθορίζει για πόσο χρονικό διάστημα θα διατηρούνται τα διαπιστευτήρια στη μνήμη. Χρησιμοποιώντας το βοηθητικό πρόγραμμα, τα διαπιστευτήρια δεν θα αγγίξουν ποτέ το δίσκο και θα διαγραφούν μετά το καθορισμένο χρονικό όριο. Η προεπιλεγμένη τιμή είναι 900 δευτερόλεπτα (15 λεπτά).


ΠΡΟΕΙΔΟΠΟΙΗΣΗ : Αν χρησιμοποιήσετε αυτή τη μέθοδο, οι κωδικοί πρόσβασης των λογαριασμών git θα αποθηκευτούν σε μορφή plaintext, στο global .gitconfig file, π.χ. στο linux θα είναι /home/[username]/.gitconfig

Αν αυτό δεν είναι επιθυμητό για εσάς, χρησιμοποιήστε αντί αυτού ένα ssh key για τους λογαριασμούς σας.

Σχόλια (3)

Ενεργοποιήστε το credential helper ώστε το Git να αποθηκεύσει τον κωδικό πρόσβασής σας στη μνήμη για κάποιο χρονικό διάστημα:

Εισάγετε στο Terminal τα εξής: Στο Terminal, πληκτρολογήστε τα εξής:

# Set git to use the credential memory cache
git config --global credential.helper cache

Από προεπιλογή, το Git θα αποθηκεύσει τον κωδικό πρόσβασής σας για 15 λεπτά.

Για να αλλάξετε το προεπιλεγμένο χρονικό όριο προσωρινής αποθήκευσης κωδικού πρόσβασης, πληκτρολογήστε τα εξής:

# Set the cache to timeout after 1 hour (setting is in seconds)
git config --global credential.helper 'cache --timeout=3600'

Από τη Βοήθεια του GitHub

Σχόλια (8)