ÁÄÁÄÈÃGit²»±ØÊäÈëÃÜÂëµÄÒªÁì
ÒÔgit×÷Ϊ°æ±¾¿ØÖƹ¤¾ß£¬ÈÃÎÒÃǵĿª·¢ÊÂÇéÔ½·¢¸ßЧ¡£µ«ÔÚƽʱʹÓÃgitʱ£¬ÎÒÃǾ³£»áÊäÈëÓû§ÃûºÍÃÜÂëÉÏ°¶£¬¾ÙÐÐpushºÍpull²Ù×÷£¬Õâ¹ØÓÚÎÒÃǵÄЧÂÊÊÇÒ»¸öºÜ´óµÄÎÊÌâ¡£Òò´Ë£¬ÔõÑù²»ÊäÈëÃÜÂ룬ʵÏÖÔ½·¢Ë³³©µÄgit²Ù×÷£¬³ÉΪÁËgitÓû§ÐèÒª½â¾öµÄÎÊÌâÖ®Ò»¡£½ÓÏÂÀ´£¬ÎÒÃǾÍÀ´·ÖÏíÒ»ÏÂÔõÑùÈÃgit²»±ØÊäÈëÃÜÂëµÄÒªÁì¡£
ʹÓÃSSHÃÜÔ¿
Ê×ÏÈ£¬ÎÒÃÇÐèÒªÏàʶʲôÊÇSSHÃÜÔ¿¡£SSH£¨Secure Shell£©ÊÇÒ»ÖÖÍøÂçÐÒ飬Äܹ»Í¨¹ý¼ÓÃܵÄÊý¾ÝͨµÀ£¬ÔÚ²»Çå¾²µÄÍøÂçÖÐÇå¾²µØ´«ÊäÊý¾Ý¡£¶øSSHÃÜÔ¿ÊÇSSHÐÒéËùʹÓõĵǼ·½·¨£¬Ëü¿ÉÒÔÓÃÀ´È¡´ú¹Å°åµÄÓû§ÃûºÍÃÜÂëµÇ¼·½·¨£¬ÈÃÎÒÃDz»ÔÙÐèÒª¼Ç×ÅÃÜÂë¡£
ҪʹÓÃSSHÃÜÔ¿£¬ÎÒÃÇÊ×ÏÈÐèÒªÌìÉúÒ»¶ÔÃÜÔ¿£¬¼´¹«Ô¿ºÍ˽Կ¡£ÌìÉúÃÜÔ¿µÄÒªÁìÈçÏ£º
$ ssh-keygen -t rsa -C "your_email@example.com"
µÇ¼ºó¸´ÖÆ
ÆäÖУ¬¡°your_email@example.com¡±ÊÇÄãµÄÓÊÏäµØµã£¬¿ÉÒÔƾ֤×Ô¼ºµÄÏÖÕæÏàÐξÙÐиü¸Ä¡£Ö´ÐиÃÏÂÁîºó£¬»áÌáÐÑÄãÑ¡ÔñÉúÑÄÃÜÔ¿µÄλÖã¬Ä¬ÈÏÊÇÉúÑÄÔÚ ~/.ssh Ŀ¼Ï¡£Äã¿ÉÒÔ°´»Ø³µ¼üÑ¡ÔñĬÈÏλÖã¬Ò²¿ÉÒÔÊäÈëÒ»¸öеķ¾¶¡£
½ÓÏÂÀ´£¬ÏÂÁîÐлáÌáÐÑÄãÊäÈëÒ»¸öÇå¾²ÃÜÂ루passphrase£©¡£Õâ¸öÃÜÂëÖ»ÊÇÆðµ½ÃÜÂë±£»¤ÃÜÔ¿µÄ×÷Óã¬ÔÚÖ´ÐÐGit²Ù×÷ʱ²»ÐèÒªÊäÈëËü¡£ÈôÊÇÄã²»ÏëÊäÈëÃÜÂ룬¿ÉÒÔÖ±½Ó°´»Ø³µ¼üÌø¹ýÕâÒ»²½¡£
ÔÚ ~/.ssh Ŀ¼ÏÂÌìÉúÁËÁ½¸öÎļþ£ºid_rsa ºÍ id_rsa.pub£¬ÆäÖÐ id_rsa ÊÇ˽Կ£¬id_rsa.pub Êǹ«Ô¿¡£ÎÒÃÇÐèÒª½«¹«Ô¿¼ÓÈëµ½GitЧÀÍÆ÷ÖУ¬ÒÔ±ãGitЧÀÍÆ÷Äܹ»Ê¶±ðÄãµÄÉí·Ý¡£
ÔÚGithubºÍGitLabµÈÖ÷Á÷»¥ÁªÍøЧÀÍÉÏ£¬Äã¿ÉÒÔ½øÈëСÎÒ˽ÈËÕË»§µÄ¡°SSH and GPG keys¡±Ò³Ã棬Ìí¼ÓÄãµÄ¹«Ô¿¡£Ìí¼Óºó£¬¾Í²»ÔÙÐèÒªÊäÈëÃÜÂ룬ֱ½ÓʹÓÃSSHÐÒé¾ÙÐÐGit²Ù×÷¼´¿É¡£
»º´æÕË»§ÃÜÂë
ÈôÊÇÄã²»ÏëʹÓÃSSHÃÜÔ¿£¬Ò²ÓÐÁíÍâÒ»ÖÖÒªÁì¿ÉÒÔÈÃGit²»±ØÊäÈëÃÜÂ룬ÄǾÍÊÇ»º´æÕË»§ÃÜÂ롣ҪʵÏÖÕâÖÖ·½·¨£¬ÎÒÃÇ¿ÉÒÔʹÓÃһЩGitÌṩµÄÏÂÁî¡£ºÃ±È£¬ÔÚʹÓÃGit push²Ù×÷ʱÌí¼Ó–credentialÑ¡ÏÏÂÁîÓ¦¸ÃÈçÏ£º
$ git push --credential-store=cache
µÇ¼ºó¸´ÖÆ
Ö´ÐÐÕâ¸öÏÂÁîºó£¬Git»áÔÚ»º´æÖмÇ×ÅÄãµÄÕË»§ÃûºÍÃÜÂë¡£µ±ÄãÏ´ÎÔÙÖ´ÐÐGit²Ù×÷ʱ£¬Git»á×Ô¶¯»ñÈ¡ÕË»§ÃûºÍÃÜÂ룬²»ÔÙÐèÒªÊÖ¶¯ÊäÈë¡£
¿ÉÊÇ£¬ÕâÖÖ·½·¨ÓÐÒ»¸öÎÊÌâ¡£»º´æÖд洢µÄÃÜÂëÊÇÃ÷ÎÄ£¬ÈôÊÇÄãµÄÅÌËã»ú±»ºÚ¿Í¹¥»÷£¬ÄãµÄÃÜÂë¾ÍºÜÈÝÒ×±»ÇÔÈ¡¡£Òò´Ë£¬²»½¨Òéºã¾ÃʹÓÃÕâÖÖ·½·¨¡£ÈôÊÇÄã¾öÒé×èֹʹÓÃÕâÖÖ·½·¨£¬¿ÉÒÔÖ´ÐÐÒÔÏÂÏÂÁ
$ git config --global credential.helper 'cache --timeout=3600'
µÇ¼ºó¸´ÖÆ
Õâ¸öÏÂÁîµÄ×÷ÓÃÊÇÖ¸¶¨»º´æʱ¼äΪһ¸öСʱ¡£ÔÚһСʱÒÔºó£¬Git¾Í»á×Ô¶¯É¨³ý»º´æÖеÄÃÜÂë¡£
×ܽá
ͨ¹ýSSHÃÜÔ¿»ººÍ´æÕË»§ÃÜÂëÁ½ÖÖ·½·¨£¬ÎÒÃÇ¿ÉÒÔʵÏÖÈÃGit²Ù×÷²»ÐèÒªÊÖ¶¯ÊäÈëÃÜÂë¡£ÔÚÕâÁ½ÖÖ·½·¨ÖУ¬SSHÃÜÔ¿Ô½·¢Çå¾²£¬ÇÒ¿ÉÒÔ±£»¤ÄãµÄÕË»§ÐÅÏ¢²»±»ÍµÈ¡¡£¶ø»º´æÕË»§ÃÜÂëÕâÖÖ·½·¨ËäÈ»±ã½Ý£¬¿ÉÊÇÔÚÇå¾²ÐÔÉϱ£´æÒ»¶¨µÄÒþ»¼¡£Òò´Ë£¬ÔÚʹÓûº´æÕË»§ÃÜÂëÕâÖÖ·½·¨Ç°£¬ÐèÒª×ÐϸȨºâ×Ô¼ºµÄÏÖÕæÏàÐΣ¬È·±£ÐÅÏ¢Çå¾²¡£
ÒÔÉϾÍÊÇÁÄÁÄÈÃGit²»±ØÊäÈëÃÜÂëµÄÒªÁìµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡