@@ -35,65 +35,78 @@ public async Task InitializeAsync()
3535 var tasks = new List < Task > ( ) ;
3636
3737 Async ( async ( ) =>
38- Root = ( await GetOutput ( new GitRevParseOptions
38+ Root ?? = ( await GetOutput ( new GitRevParseOptions
3939 {
4040 ShowToplevel = true ,
4141 } ) ) ! ) ;
4242
4343 Async ( async ( ) =>
44- BranchName = await GetOutput ( new GitBranchOptions
44+ BranchName ?? = await GetOutput ( new GitBranchOptions
4545 {
4646 ShowCurrent = true ,
4747 } )
4848 ) ;
4949
5050 Async ( async ( ) =>
5151 {
52- DefaultBranchName = await GetDefaultBranchName ( ) ;
52+ DefaultBranchName ?? = await GetDefaultBranchName ( ) ;
5353 } ) ;
5454
5555 Async ( async ( ) =>
56- LastCommitSha = await GetOutput ( new GitRevParseOptions
56+ LastCommitSha ?? = await GetOutput ( new GitRevParseOptions
5757 {
58- Arguments = new [ ] { "HEAD" } ,
58+ Arguments = [ "HEAD" ] ,
5959 } )
6060 ) ;
6161
6262 Async ( async ( ) =>
63- LastCommitShortSha = await GetOutput ( new GitRevParseOptions
63+ LastCommitShortSha ?? = await GetOutput ( new GitRevParseOptions
6464 {
6565 Short = true ,
66- Arguments = new [ ] { "HEAD" } ,
66+ Arguments = [ "HEAD" ] ,
6767 } )
6868 ) ;
6969
7070 Async ( async ( ) =>
71- Tag = await GetOutput ( new GitDescribeOptions
71+ Tag ?? = await GetOutput ( new GitDescribeOptions
7272 {
7373 Tags = true ,
7474 } )
7575 ) ;
7676
7777 Async ( async ( ) =>
78- CommitsOnBranch =
79- int . Parse ( await GetOutput ( new GitRevListOptions
80- {
81- Count = true ,
82- Arguments = new [ ] { "HEAD" } ,
83- } ) ?? "0" )
84- ) ;
78+ {
79+ if ( CommitsOnBranch == null )
80+ {
81+ return ;
82+ }
83+
84+ int . TryParse ( await GetOutput ( new GitRevListOptions
85+ {
86+ Count = true ,
87+ Arguments = [ "HEAD" ] ,
88+ } ) ?? "0" , out var commitsOnBranch ) ;
89+ CommitsOnBranch = commitsOnBranch ;
90+ } ) ;
8591
8692 Async ( async ( ) =>
87- LastCommitDateTime = DateTimeOffset . FromUnixTimeSeconds (
88- long . Parse ( await GetOutput ( new GitLogOptions
89- {
90- Format = "%at" ,
91- Arguments = new [ ] { "-1" } ,
92- } ) ?? "0" ) )
93- ) ;
93+ {
94+ if ( LastCommitDateTime == null )
95+ {
96+ return ;
97+ }
98+
99+ long . TryParse ( await GetOutput ( new GitLogOptions
100+ {
101+ Format = "%at" ,
102+ Arguments = [ "-1" ] ,
103+ } ) ?? "0" , out var lastCommitDateTime ) ;
104+
105+ LastCommitDateTime = DateTimeOffset . FromUnixTimeSeconds ( lastCommitDateTime ) ;
106+ } ) ;
94107
95108 Async ( async ( ) =>
96- PreviousCommit = await LastCommits ( 1 ) . FirstOrDefaultAsync ( )
109+ PreviousCommit ?? = await LastCommits ( 1 ) . FirstOrDefaultAsync ( )
97110 ) ;
98111
99112 await Task . WhenAll ( tasks ) ;
@@ -127,7 +140,7 @@ private async Task<string> GetGitVersion()
127140 {
128141 var result = await _command . ExecuteCommandLineTool ( new CommandLineToolOptions ( "git" )
129142 {
130- Arguments = new [ ] { "version" } ,
143+ Arguments = [ "version" ] ,
131144 CommandLogging = CommandLogging . None ,
132145 } ) ;
133146
@@ -145,7 +158,7 @@ private async Task<string> GetGitVersion()
145158 {
146159 var output = await GetOutput ( new GitRemoteOptions
147160 {
148- Arguments = new [ ] { "show" , "origin" } ,
161+ Arguments = [ "show" , "origin" ] ,
149162 } ) ;
150163
151164 return output ! . Split ( '\n ' , StringSplitOptions . TrimEntries | StringSplitOptions . RemoveEmptyEntries )
@@ -156,7 +169,7 @@ private async Task<string> GetGitVersion()
156169 {
157170 var output = await GetOutput ( new GitRevParseOptions
158171 {
159- Arguments = new [ ] { "origin/HEAD" } ,
172+ Arguments = [ "origin/HEAD" ] ,
160173 AbbrevRef = true ,
161174 ThrowOnNonZeroExitCode = false ,
162175 } ) ;
@@ -184,19 +197,19 @@ private async Task<string> GetGitVersion()
184197
185198 public GitCommit ? PreviousCommit { get ; private set ; }
186199
187- public Folder Root { get ; private set ; } = null ! ;
200+ public Folder ? Root { get ; private set ; }
188201
189- public string ? BranchName { get ; private set ; } = null ! ;
202+ public string ? BranchName { get ; private set ; }
190203
191- public string ? DefaultBranchName { get ; private set ; } = null ! ;
204+ public string ? DefaultBranchName { get ; private set ; }
192205
193- public string ? Tag { get ; private set ; } = null ! ;
206+ public string ? Tag { get ; private set ; }
194207
195- public int CommitsOnBranch { get ; private set ; }
208+ public int ? CommitsOnBranch { get ; private set ; }
196209
197- public DateTimeOffset LastCommitDateTime { get ; private set ; }
210+ public DateTimeOffset ? LastCommitDateTime { get ; private set ; }
198211
199- public string ? LastCommitSha { get ; private set ; } = null ! ;
212+ public string ? LastCommitSha { get ; private set ; }
200213
201- public string ? LastCommitShortSha { get ; private set ; } = null ! ;
214+ public string ? LastCommitShortSha { get ; private set ; }
202215}
0 commit comments