5

git lfs を使用して、git リポジトリの大きなファイルを保存します。次に、ホストされたエージェントでこのレポを構築しようとします。私のビルドはとてもシンプルです。これには、PowerShell を実行するという 1 つのタスクがあります。呼び出されたスクリプトで最初にやりたいことは、lfs の依存関係を取得することです。したがって、スクリプトには次のものがあります。

& git lfs fetch

残念ながら、私のビルドは次のエラーで失敗します:

2016-03-04T19:49:05.7021988Z ##[error]git: 'lfs' is not a git command. See 'git --help'.
2016-03-04T19:49:05.7031986Z ##[error]Did you mean this?
2016-03-04T19:49:05.7041987Z ##[error]  flow

ホストされたエージェントには何もインストールできないので、git lfs を利用できるようにするにはどうすればよいですか?

EDITこの問題では、ここで 説明されている git lfs 認証の問題については話していません。私は厳密に を呼び出す問題について話していgit lfsます。

を呼び出すことができたらgit lfs、この回答を見て認証の問題を解決してください。

4

4 に答える 4

3

Hosted Build Controller で Git LFS がデフォルトでサポートされるようになりました。ただし、ソースの取得ステップで有効にする必要があります。

于 2016-12-29T11:54:18.587 に答える
2

デフォルトでは git-lfs が Hosted Build Agent にインストールされていないため、このエラー メッセージが表示されます。

また、Hosted Build Agent を使用しているため、Chocolatey 経由で git-lfs をインストールするのは、管理者権限がないため少し面倒です。別の方法は、git-lfs のバイナリ ファイルを直接ダウンロードして、ソース管理にアップロードすることです。次に、スクリプトで絶対パスを使用して git-tfs.exe を呼び出すことができます。

于 2016-03-07T05:51:27.743 に答える
1

Eddie が提供するソリューションの詳細を次に示します。git lfs組み込みコマンドではありません。gitカスタム コマンドです。

を呼び出すとgit lfs、git.exe はlfsコマンドを認識しません。そのため、PATH 環境変数を調べて、という名前のプログラムを検索しますgit-lfs.exe。見つかったら、指定された引数でそのプログラムを呼び出します。

したがって、 を呼び出すことgit-lfs.exe pullは、 を呼び出すことと同じgit.exe lfs pullです。

したがって、推奨される解決策は、git-lfs.exe をダウンロードし、それを git リポジトリに追加して (明らかに LFS によって追跡されるべきではありません)、git-lfs.exe を呼び出すことです。

git-lfs.exe を含むフォルダーをパス環境変数に追加することもできます。これにより、通常どおりにコマンドを使用できるようになりますgit.exe lfs pull

于 2016-03-08T19:44:45.497 に答える
0

ソフトウェアのインストールが許可され、ビルド中にインターネットにアクセスできる場合は、git-lfs 操作の前に cmd / PowerShell タスクでChocolatey パッケージを使用して git-lfs をインストールできる場合があります。

于 2016-03-06T19:53:15.673 に答える