ටීඑල්ඩීආර්; Git 1.8.3+ සමඟ සංකේතාත්මක netrc ගොනුවක් භාවිතා කරන්න .
Git ගබඩාවක් සඳහා මුරපදයක් සුරැකීම HTTPS URL වින්ඩෝස් හි ~/.netrc
(යුනික්ස්) හෝ %HOME%/_netrc
(සටහන් කරන්න _
) සමඟ කළ හැකිය.
නමුත් : එම ගොනුව ඔබගේ මුරපදය සරල පෙළෙහි ගබඩා කරයි.
විසඳුම : එම ගොනුව GPG (GNU රහස්යතා ආරක්ෂකයා) සමඟ සංකේතනය කරන්න , සහ මුරපදයක් අවශ්ය සෑම අවස්ථාවකම Git එය විකේතනය කරන්න ( push
/ pull
/ fetch
/ clone
ක්රියාත්මක කිරීම සඳහා).
සටහන: Git 2.18 (Q2 2018) සමඟ, ඔබට දැන් සංකේතාත්මක .netrc
ගොනුව විකේතනය කිරීමට භාවිතා කරන GPG රිසිකරණය කළ හැකිය .
බලන්න 786ef50 , commit f07eeed (12 මැයි 2018) ලුයිස් මාර්සානෝ (``) .
(ඒකාබද්ධ කරන ලද්දේ ජූනියෝ සී හමානෝ - gitster
- in commit 017b7c5 , 30 මැයි 2018)
git-credential-netrc
: පිළිගැනීමේ gpg
විකල්පය
git-credential-netrc
gpg
gpg.program විකල්පය නොසලකා ' ' සමඟ විකේතනය කිරීමට දෘ c කේත කර ඇත.
මෙය නූතන GnuPG ලෙස හඳුන්වන ඩේබියන් වැනි බෙදාහැරීම්වල ගැටළුවක් වන අතර එය ' gpg2
'
වින්ඩෝස් සඳහා පියවරෙන් පියවර උපදෙස්
වින්ඩෝස් සමඟ:
(Git gpg.exe
එහි ව්යාප්තියේ ඇත, නමුත් සම්පූර්ණ GPG ස්ථාපනය භාවිතා කිරීම a ඇතුළත් වන අතර gpg-agent.exe
එමඟින් ඔබගේ GPG යතුර හා සම්බන්ධ මුරපදය කටපාඩම් වනු ඇත.)
ස්ථාපනය කරන්න gpg4Win Lite
, අවම gnupg විධාන රේඛා අතුරුමුහුණත ( වඩාත්මgpg4win-vanilla-2.X.Y-betaZZ.exe
නවීනතම දේ ගන්න ), සහ GPG ස්ථාපන නාමාවලිය සමඟ ඔබේ PATH සම්පූර්ණ කරන්න:
set PATH=%PATH%:C:\path\to\gpg
copy C:\path\to\gpg\gpg2.exe C:\path\to\gpg\gpg.exe
(' copy
' විධානය සැලකිල්ලට ගන්න : ' ' විධානය ක්රියාත්මක කිරීමට Git හට Bash ස්ක්රිප්ට් එකක් අවශ්ය gpg
වේ. gpg4win-vanilla-2
එන බැවින් gpg2.exe
, ඔබ එය අනුපිටපත් කළ යුතුය.)
(එම යතුරට මුරපදයක් දැමීමට වග බලා ගන්න.)
එම යතුර විශ්වාස කරන්න
ඔබ තුළ ඇති නාමාවලියක අක්තපත්ර උපකාරක පිටපත ස්ථාපනය කරන්න %PATH%
:
cd c:\a\fodler\in\your\path
curl -o c:\prgs\bin\git-credential-netrc https://raw.githubusercontent.com/git/git/master/contrib/credential/netrc/git-credential-netrc.perl
(පරෙස්සම් වන්න: පිටපත Git 2.25.x / 2.26 හි නම් කර ඇත, පහත බලන්න)
(ඔව්, මෙය බාෂ් ස්ක්රිප්ටයකි, නමුත් එය වින්ඩෝස් මත ක්රියා කරනු ඇත, මන්ද එය Git විසින් හඳුන්වනු ඇත.)
(ඔබ භාවිතා කරන URL එක අනුව ' protocol
' කොටස: ' http
' හෝ ' https
' අමතක නොකරන්න .)
(ඔබ දැන් හැකි මකා ඇති _netrc
එකම තබා, ගොනු _netrc.gpg
සංකේතනය එකක්.)
(' /
' සටහන :C:\path\to...
කිසිසේත් ක්රියා නොකරනු ඇත.) ( -v -d
සිදුවන්නේ කුමක්දැයි බැලීමට ඔබට මුලින් භාවිතා කළ හැකිය .)
මෙතැන් සිට, සත්යාපනය අවශ්ය වන HTTP (S) URL භාවිතා කරන ඕනෑම Git විධානයක් එම _netrc.gpg
ගොනුව විකේතනය කර ඔබ සම්බන්ධ කර ගන්නා සේවාදායකයට සම්බන්ධ වූ පිවිසුම් / මුරපදය භාවිතා කරයි. පළමු වරට, ගොනුව විකේතනය කිරීම සඳහා GPG ඔබගේ GPG යතුරේ මුරපදය ඔබෙන් අසනු ඇත. අනෙක් අවස්ථාවලදී, gpg-agent පළමු GPG ඇමතුම මඟින් ස්වයංක්රීයව දියත් කරන ලද ඔබට එම මුරපදය ලබා දෙනු ඇත.
එමගින්, ඔබට එක් ගොනුවක URL / පිවිසුම් / මුරපද කිහිපයක් කටපාඩම් කරගත හැකි අතර එය ඔබේ තැටියේ සංකේතනය කර ඇත.
"හැඹිලි" සහායකයෙකුට වඩා එය පහසු බව මට පෙනේ, එහිදී ඔබ මතක තබා ගත යුතු අතර (එක් සැසියකට වරක්) ඔබේ එක් එක් දුරස්ථ සේවාවන් සඳහා වෙනස් මුරපදයක් ටයිප් කරන්න, මන්ද එම මුරපදය මතකයේ රඳවා තබා ගත යුතුය.
Git 2.26 (Q1 2020) සමඟ, භාවිතා කිරීම සඳහා නියැදි අක්තපත්ර සහායකයා .netrc
කොටුවෙන් පිටත වැඩ කිරීමට යාවත්කාලීන කර ඇත. පැච් / සාකච්ඡාව බලන්න .
ඩෙන්ටන් ලියු ( ) විසින් බැඳීම 6579d93 බලන්න , 1c78c78 (2019 දෙසැම්බර් 20 ) බලන්න . (විසින් අලුතින් ඒකාබද්ධ ජූනි සී Hamano - - දී 1fd27f8 සිදු , 25 දෙසැම්බර් 2019)Denton-L
gitster
අත්සන් කළේ: ඩෙන්ටන් ලියු
පර්ල් පරිවර්තකයා සඳහා ෂෙබාං මාර්ගය git-credential-netrc
දෘඩ කේත කර ඇත.
කෙසේ වෙතත්, සමහර පරිශීලකයින්ට එය වෙනත් ස්ථානයක පිහිටා ඇති අතර එමඟින් ස්ක්රිප්ට් අතින් සංස්කරණය කිරීමට සිදුවනු ඇත.
.perl
ස්ක්රිප්ටයට අච්චුවක් ලෙස දැක්වීමට උපසර්ගයක් එක් කර ජනනය කළ අනුවාදය නොසලකා හරින්න.
ගුණාත්මකභාවය වර්ධනය කිරීම මෙම Makefile
එය ජනනය වන පරිදි git-credential-netrc
සිට git-credential-netrc.perl
පමණක් වෙනත් perl බසට ලං පිටපත් වගේ.
මේක්ෆයිල් වට්ටෝරු නිර්ලජ්ජිතව සොරකම් කරන ලදී contrib/mw-to-git/Makefile
.
සහ:
2.26 (Q1 2020) සමඟ .netrc භාවිතා කිරීම සඳහා නියැදි අක්තපත්ර සහායකයා කොටුවෙන් පිටත වැඩ කිරීමට යාවත්කාලීන කර ඇත.
ඩෙන්ටන් ලියු ( ) විසින් බැඳීම 6579d93 බලන්න , 1c78c78 (2019 දෙසැම්බර් 20 ) බලන්න . (විසින් අලුතින් ඒකාබද්ධ ජූනි සී Hamano - - දී 1fd27f8 සිදු , 25 දෙසැම්බර් 2019)Denton-L
gitster
අත්සන් කළේ: ඩෙන්ටන් ලියු
දැනට, git-credential-netrc
git නිධියකින් පිටත ක්රියා නොකරයි. එය පහත දෝෂය සමඟ අසමත් වේ:
fatal: Not a git repository: . at /usr/share/perl5/Git.pm line 214.
නිධියක් තුළ සිටිය යුතු බවට සැබෑ හේතුවක් නැත. අක්තපත්ර සහායකයින්ට ගබඩාවෙන් පිටත ද හොඳින් වැඩ කිරීමට හැකි විය යුතුය.
වන ස්වයං නොවන අනුවාදය අමතන්න config()
එසේ git-credential-netrc
නිධිය තුළ ක්රියාත්මක කළ යුතු තවදුරටත් අවශ්යතා.
ජෙෆ් කිං ( peff
) එකතු කරයි:
මම හිතන්නේ ඔබ භාවිතා කරන්නේ gpg- සංකේතාත්මක netrc
(එසේ නොවේ නම්, ඔබ බොහෝ විට භාවිතා කළ යුතුය credential-store
).
"කියවීමට-පමණක්" මුරපද ප්රවේශය සඳහා, pass
වින්යාසය සමඟ සංයෝජනය ටිකක් හොඳ බව මට පෙනේ :
[credential "https://github.com"]
username = peff
helper = "!f() { test $1 = get && echo password=`pass github/oauth`; }; f"