回答:
.netrc
Windowsでファイルを使用することは可能ですか?
はい:する必要があります:
%HOME%
(Git 2.0より前、Git 2.0以降では不要)_netrc
ファイルを入れる%HOME%
Windows 7/10を使用している場合は、CMD
セッションで次のように入力します。
setx HOME %USERPROFILE%
とは%HOME%
' C:\Users\"username"
'に設定されます。
そのフォルダに移動し(cd %HOME%
)、「_netrc
」というファイルを作成します
注:ここでも、Windows用、あなたが「必要_netrc
」ファイル、ではない「.netrc
」ファイルを。
その内容はかなり標準的です(<examples>
あなたの値に置き換えてください):
machine <hostname1>
login <login1>
password <password1>
machine <hostname2>
login <login2>
password <password2>
ルークはコメントで言及しています:
Windows 7でmsysgitの最新バージョンを使用して、
HOME
環境変数を設定する必要はありませんでした。_netrc
ファイルだけでトリックをしました。
これは私が「に言及したものを実際にあるしようとしている『install
』 githubの、.ssh
ではないがDIR:」
git-cmd.bat
設定んmsysgitに含まれて%HOME%
環境変数を:
@if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH%
@if not exist "%HOME%" @set HOME=%USERPROFILE%
者国者は、「httpプロトコルでは機能しないようだ」というコメントを信じています。
ただし、これnetrc
はで使用されcurl
、次の例に示すようにHTTPプロトコルで機能することを確認しnetrc
ました(ページで「」を探します)。ここでもHTTPプロトコルで使用されます: " _netrc
/の.netrc
代わりにcURL
"。
netrc
Windows でのサポートの一般的なトラップは、オリジンのhttps urlがユーザー名を指定している場合、gitがそれを使用しないことです。
たとえば、.git/config
ファイルに次のものが含まれているとします。
[リモート「元」] フェッチ= + refs / heads / *:refs / remotes / origin / * url = https://bob@code.google.com/p/my-project/
Gitはを介して資格情報を解決しません。_netrc
これを修正するには、次のようにユーザー名を削除します。
[リモート「元」] フェッチ= + refs / heads / *:refs / remotes / origin / * url = https://code.google.com/p/my-project/
代替ソリューション:でgitのバージョン1.7.9+(2012年1月):この回答からマークLongairは詳細資格キャッシュ・メカニズムも、あなたがすることができない、以下のようにプレーンテキストでパスワードを保存します。
Gitの1.8.3(2013年4月):
暗号化された.netrcを(でgpg
)使用できるようになりました。
Windowsの場合:%HOME%/_netrc
(_
ではなく、 " .
「)
ファイルを操作するための新しい読み取り専用の資格情報ヘルパー(内
contrib/
).netrc/.authinfo
が追加されました。
このスクリプトにより、gpgで暗号化されたnetrcファイルを使用できるようになり、資格情報がプレーンテキストファイルに保存される問題が回避されます。
.gpg
拡張子が付いたファイルは、解析前にGPGによって復号化されます。
複数の-f
引数は問題ありません。それらは順番に処理され、最初に一致したエントリが資格情報ヘルパープロトコルを介して返されます。何のときに
-f
オプションが指定されていない、.authinfo.gpg
、.netrc.gpg
、.authinfo
、と.netrc
自分のホームディレクトリ内のファイルは、この順序で使用されています。
この資格情報ヘルパーを有効にするには:
git config credential.helper '$shortname -f AUTHFILE1 -f AUTHFILE2'
(Gitは
git-credential-
ヘルパー名の前に " "を付加し、パス内で検索することに注意してください。)
# and if you want lots of debugging info:
git config credential.helper '$shortname -f AUTHFILE -d'
#or to see the files opened and data found:
git config credential.helper '$shortname -f AUTHFILE -v'
完全な例については、「使用時にパスワード入力をスキップする方法はありますかhttps:// github
」を参照してください。
Git 2.18+(2018年6月)では、暗号化された.netrc
ファイルの復号化に使用されるGPGプログラムをカスタマイズできるようになりました。
コミット786ef50、コミットf07eeed(12 May 2018)、Luis Marsano ( ``)を参照してください。
(による合併Junio C浜野- gitster
-で017b7c5コミット、2018年5月30日)を
git-credential-netrc
:gpg
オプションを受け入れる
git-credential-netrc
gpg
gpg.programオプションに関係なく、' 'で復号化するようにハードコーディングされました。
これは、現代のGnuPGを「gpg2
」のような別のものと呼ぶDebianのようなディストリビューションの問題です。
http.proxy
環境変数でを定義する必要がある場合があります。または、逆に、サーバーをno_proxy
変数に追加して、WAN経由でLANサーバーにアクセスしないようにします。
msysgit
Windows 7 の最新バージョンのを使用して、HOME
環境変数を設定する必要はありませんでした。_netrc
ファイルだけでトリックをしました。
Git Credential Manager for Windowsをインストールして、Gitパスワードをの代わりにWindows資格情報マネージャーに保存することもできます_netrc
。これは、パスワードを保存するためのより安全な方法です。
.netrc
。これで、暗号化されたファイルに資格情報を保存できます。セッション中に一度もこれらの資格情報を入力する必要はありません。
これにより、GitはHTTPSで次を使用して認証できます.netrc
。
_netrc
、に配置する必要がありますc:\Users\<username>
。HOME=%USERPROFILE%
(コントロールパネルの[システム]オプションを使用してシステム全体の環境変数を設定します。Windowsのバージョンによっては、[詳細オプション]を選択する必要があります。)_netrc
ファイルに保存されているパスワードにスペースを含めることはできません(パスワードの引用は機能しません)。_netrc
サイトwww.course.comから資料をダウンロードする方法を投稿しています。
誰かがCoursera-dlを使用してwww.coursera.comでオープンクラスの資料をダウンロードし、Windows OSでは、UnixのようなOSにある「.netrc」のようなファイルを使用して、オプションの-n
代わりにオプション-U <username> -P <password>
。彼/彼女はこのようにそれを行うことができます:
Windows OSのホームパスを確認しますsetx HOME %USERPROFILE%
(VonCの回答を参照)。HOME
環境変数をとして保存しますC:\Users\"username"
。
ディレクトリC:\Users\"username"
に移動し、ファイル名を作成します_netrc
。注:接尾辞はありません。
内容は次のとおりです:machine coursera-dl login <user> password <pass>
などのコマンドを使用してcoursera-dl -n --path PATH <course name>
、クラスの資料をダウンロードします。このページのその他のコースラdlオプションの詳細。
HOME
Windowsではデフォルトで定義されていないため、環境変数は重要です。この変数は、好きなディレクトリに設定できます(必須ではありませんC:\users\mylogin
)。たとえば、職場では、Windowsアカウントに関連付けられているプライベートリモートディスクに設定します。これにより、失うことなくデスクトップを切り替えることができます。私.ssh
または_netrc
設定。