ฉันต้องการทำคำสั่งนี้ในหนึ่งบรรทัด:
git pull && [my passphrase]
ทำอย่างไร?
ฉันต้องการทำคำสั่งนี้ในหนึ่งบรรทัด:
git pull && [my passphrase]
ทำอย่างไร?
คำตอบ:
นี่ไม่ใช่สิ่งที่คุณต้องการ แต่สำหรับ http:
https://user:pass@domain/repo
แต่ไม่แนะนำจริง ๆ เพราะมันจะแสดงผู้ใช้ของคุณ / ผ่านในหลายสถานที่ ...ตัวอย่างการใช้งานสำหรับผู้ช่วยข้อมูลรับรอง
git config credential.helper store
- เก็บหนังสือรับรองอย่างไม่มีกำหนดgit config credential.helper 'cache --timeout=3600'
- เก็บเป็นเวลา 60 นาทีสำหรับการเข้าถึงโดยใช้ ssh คุณจะต้องใช้ตัวแทน ssh ที่จะให้คีย์ ssh เมื่อจำเป็น สิ่งนี้จะต้องมีการสร้างคีย์บนคอมพิวเตอร์ของคุณการจัดเก็บคีย์สาธารณะบนเซิร์ฟเวอร์ระยะไกลและเพิ่มคีย์ส่วนตัวไปยังที่เก็บคีย์ที่เกี่ยวข้อง
ฉันพบวิธีหนึ่งในการจัดหาข้อมูลรับรองสำหรับการเชื่อมต่อ https บนบรรทัดคำสั่ง คุณเพียงแค่ต้องระบุ URL ที่สมบูรณ์เพื่อดึง git และรวมข้อมูลรับรองที่นั่น:
git pull https://username:password@mygithost.com/my/repository
คุณไม่จำเป็นต้องมีที่เก็บข้อมูลโคลนด้วยข้อมูลรับรองก่อนหน้านี้ซึ่งหมายความว่าข้อมูลรับรองของคุณไม่จบลง.git/config
ด้วย (แต่ให้แน่ใจว่าเชลล์ของคุณไม่ได้ทรยศคุณและเก็บบรรทัดคำสั่งไว้ในไฟล์ประวัติ)
:password
ส่วนนี้คุณจะได้รับแจ้งรหัสผ่านหลังจากกดปุ่ม Enter ด้วยวิธีนี้รหัสผ่านของคุณจะไม่ถูกบันทึกในประวัติทุบตี
ไม่ตอบคำถามโดยตรง แต่ผมพบว่าคำถามนี้เมื่อค้นหาวิธีการโดยทั่วไปไม่ได้ป้อนรหัสผ่านทุกครั้งเดียวฉันดึงบนเซิร์ฟเวอร์ระยะไกล
ดีgit
ช่วยให้คุณแคชข้อมูลประจำตัวของคุณเป็นระยะเวลา จำกัด มันสามารถปรับแต่งได้git config
และหน้านี้อธิบายได้ดีมาก:
https://help.github.com/articles/caching-your-github-password-in-git/#platform-linux
ในเทอร์มินัลให้รัน:
$ git config --global credential.helper cache
# Set git to use the credential memory cache
ในการปรับแต่งการหมดเวลาแคชคุณสามารถทำสิ่งต่อไปนี้
$ git config --global credential.helper 'cache --timeout=3600'
# Set the cache to timeout after 1 hour (setting is in seconds)
ข้อมูลประจำตัวของคุณจะถูกเก็บไว้ในหน่วยความจำตามระยะเวลาที่ร้องขอ
โปรดทราบว่าวิธีที่ตัวช่วยข้อมูลประจำตัว git "store" จะจัดเก็บการเปลี่ยนแปลงรหัสผ่านที่ไม่ได้เข้ารหัสด้วย Git 2.5+ (Q2 2014)
ดูคอมมิชชัน 17c7f4dโดยJunio C Hamano ( gitster
)
credential-xdg
ปรับ
store
แบ็กเอนด์ตัวอย่าง " " ของเครื่องมือช่วยข้อมูลรับรองเพื่อให้เกียรติตำแหน่งไฟล์ตั้งค่า XDG เมื่อมีการระบุ
ตอนนี้หมอพูดว่า:
หากไม่ได้ระบุ:
- ข้อมูลประจำตัวจะถูกค้นหาจาก
~/.git-credentials
และ$XDG_CONFIG_HOME/git/credentials
, และ- ข้อมูลประจำตัวจะถูกเขียนถึง
~/.git-credentials
หากมีอยู่หรือ$XDG_CONFIG_HOME/git/credentials
หากมีอยู่และข้อมูลในอดีตไม่ได้
cmd ด้านล่างจะทำงานหากเราไม่มี @ ในรหัสผ่าน:
git pull https://username:pass@word@mygithost.com/my/repository
หากคุณมี @ ในรหัสผ่านให้แทนที่ด้วย% 40 ตามที่แสดงด้านล่าง:
git pull https://username:pass%40word@mygithost.com/my/repository