Θέλω να χρησιμοποιήσω ένα push και pull αυτόματα στο GitExtension, χωρίς να πληκτρολογώ τον χρήστη και τον κωδικό μου σε μια προτροπή, κάθε φορά.
Πώς μπορώ λοιπόν να αποθηκεύσω τα διαπιστευτήριά μου στο GIT;
Εκτέλεση
git config --global credential.helper store
then
git pull
να δώσετε ένα όνομα χρήστη και έναν κωδικό πρόσβασης και αυτά τα στοιχεία θα θυμούνται αργότερα. Τα διαπιστευτήρια αποθηκεύονται σε ένα αρχείο στο δίσκο, με δικαιώματα δίσκου "απλά αναγνώσιμα/εγγράψιμα από τον χρήστη" αλλά ακόμα σε απλό κείμενο.
Εάν θέλετε να αλλάξετε τον κωδικό πρόσβασης αργότερα
git pull
Θα αποτύχει, επειδή ο κωδικός πρόσβασης είναι λανθασμένος, το git στη συνέχεια αφαιρεί τον παραβάτη χρήστη+κωδικό πρόσβασης από το αρχείο ~/.git-credentials
, οπότε τώρα ξαναεκτελέστε το
git pull
για να δώσετε έναν νέο κωδικό πρόσβασης, ώστε να λειτουργήσει όπως προηγουμένως.
Μπορείτε να χρησιμοποιήσετε το git config
για να ενεργοποιήσετε την αποθήκευση διαπιστευτηρίων στο git.
git config --global credential.helper store
Όταν εκτελείτε αυτή την εντολή, την πρώτη φορά που θα τραβήξετε ή θα προωθήσετε από το απομακρυσμένο αποθετήριο, θα ερωτηθείτε για το όνομα χρήστη και τον κωδικό πρόσβασης.
Στη συνέχεια, για τις επόμενες επικοινωνίες με το απομακρυσμένο αποθετήριο δεν χρειάζεται να δώσετε το όνομα χρήστη και τον κωδικό πρόσβασης.
Η μορφή αποθήκευσης είναι ένα αρχείο .git-credentials
, αποθηκευμένο σε απλό κείμενο.
Επίσης, μπορείτε να χρησιμοποιήσετε άλλους βοηθούς για το git config credential.helper
, δηλαδή την κρυφή μνήμη:
git config credential.helper cache <timeout>
η οποία δέχεται μια προαιρετική παράμετρο timeout
,
που καθορίζει για πόσο χρονικό διάστημα θα διατηρούνται τα διαπιστευτήρια στη μνήμη. Χρησιμοποιώντας το βοηθητικό πρόγραμμα, τα διαπιστευτήρια δεν θα αγγίξουν ποτέ το δίσκο και θα διαγραφούν μετά το καθορισμένο χρονικό όριο. Η προεπιλεγμένη
τιμή είναι 900 δευτερόλεπτα (15 λεπτά).
ΠΡΟΕΙΔΟΠΟΙΗΣΗ : Αν χρησιμοποιήσετε αυτή τη μέθοδο, οι κωδικοί πρόσβασης των λογαριασμών git θα αποθηκευτούν σε μορφή plaintext
, στο global .gitconfig file
, π.χ. στο linux θα είναι /home/[username]/.gitconfig
Αν αυτό δεν είναι επιθυμητό για εσάς, χρησιμοποιήστε αντί αυτού ένα ssh key
για τους λογαριασμούς σας.
Εισάγετε στο 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