@@ -112,11 +112,6 @@ public GitClient(IEnvironment environment, IProcessManager processManager, Cance
112112
113113 public ITask < ValidateGitInstallResult > ValidateGitInstall ( NPath path , bool isCustomGit )
114114 {
115- if ( ! path . FileExists ( ) )
116- {
117- return new FuncTask < ValidateGitInstallResult > ( TaskEx . FromResult ( new ValidateGitInstallResult ( false , null , null ) ) ) ;
118- }
119-
120115 Version gitVersion = null ;
121116 Version gitLfsVersion = null ;
122117
@@ -125,25 +120,20 @@ public ITask<ValidateGitInstallResult> ValidateGitInstall(NPath path, bool isCus
125120 gitVersion ? . CompareTo ( Constants . MinimumGitVersion ) >= 0 &&
126121 gitLfsVersion ? . CompareTo ( Constants . MinimumGitLfsVersion ) >= 0 ,
127122 gitVersion , gitLfsVersion ) ) ;
128-
129- var gitLfsVersionTask = new GitLfsVersionTask ( cancellationToken )
130- . Configure ( processManager , path , dontSetupGit : isCustomGit ) ;
131-
132- gitLfsVersionTask
133- . Then ( ( result , version ) => { return gitLfsVersion = version ; } )
134- . Then ( endTask , taskIsTopOfChain : true ) ;
135-
136- gitLfsVersionTask . Then ( endTask , TaskRunOptions . OnFailure , taskIsTopOfChain : true ) ;
137-
138- var gitVersionTask = new GitVersionTask ( cancellationToken )
139- . Configure ( processManager , path , dontSetupGit : isCustomGit ) ;
140-
141- gitVersionTask
142- . Then ( ( result , version ) => { return gitVersion = version ; } )
143- . Then ( gitLfsVersionTask , taskIsTopOfChain : true ) ;
144-
145- gitVersionTask . Then ( endTask , TaskRunOptions . OnFailure , taskIsTopOfChain : true ) ;
146123
124+ if ( path . FileExists ( ) )
125+ {
126+ var gitLfsVersionTask = new GitLfsVersionTask ( cancellationToken )
127+ . Configure ( processManager , path , dontSetupGit : isCustomGit ) ;
128+ gitLfsVersionTask . OnEnd += ( t , v , _ , __ ) => gitLfsVersion = v ;
129+ var gitVersionTask = new GitVersionTask ( cancellationToken )
130+ . Configure ( processManager , path , dontSetupGit : isCustomGit ) ;
131+ gitVersionTask . OnEnd += ( t , v , _ , __ ) => gitVersion = v ;
132+
133+ gitVersionTask
134+ . Then ( gitLfsVersionTask )
135+ . Finally ( endTask ) ;
136+ }
147137 return endTask ;
148138 }
149139
0 commit comments