Small optimization so it stops fetching and converting all commits
parent
cbbe8c44b0
commit
797ab6a9ac
|
@ -1 +1,2 @@
|
|||
/target
|
||||
profile.json
|
15
src/main.rs
15
src/main.rs
|
@ -7,9 +7,9 @@ use std::{cmp::Reverse, collections::HashSet, path::PathBuf, sync::OnceLock};
|
|||
use anyhow::{anyhow, Context, Result};
|
||||
use chrono::{DateTime, Duration, Local, NaiveDate, TimeZone};
|
||||
use clap::Parser;
|
||||
use gix::{bstr::ByteSlice, ObjectId, Repository};
|
||||
use gix::{bstr::ByteSlice, traverse::commit::simple::Sorting, ObjectId};
|
||||
use heatmap::HeatmapColors;
|
||||
use itertools::{enumerate, Itertools};
|
||||
use itertools::Itertools;
|
||||
use rgb::Rgb;
|
||||
|
||||
use crate::{cli::CliArgs, heatmap::Heatmap};
|
||||
|
@ -153,12 +153,19 @@ fn get_commits(args: CliArgs, start_date: NaiveDate) -> Result<(usize, Vec<Commi
|
|||
branches.extend(branch_names);
|
||||
}
|
||||
|
||||
let current_time = Local::now().time();
|
||||
let start_date = start_date.and_time(current_time);
|
||||
let start_date = Local.from_local_datetime(&start_date).unwrap();
|
||||
|
||||
for branch in branches {
|
||||
let branch_commits = repo
|
||||
.rev_parse(branch)?
|
||||
.single()
|
||||
.unwrap()
|
||||
.ancestors()
|
||||
.sorting(Sorting::ByCommitTimeNewestFirstCutoffOlderThan {
|
||||
seconds: start_date.timestamp(),
|
||||
})
|
||||
.all()?;
|
||||
|
||||
branch_commits
|
||||
|
@ -179,10 +186,6 @@ fn get_commits(args: CliArgs, start_date: NaiveDate) -> Result<(usize, Vec<Commi
|
|||
return None;
|
||||
}
|
||||
|
||||
let current_time = Local::now().time();
|
||||
let start_date = start_date.and_time(current_time);
|
||||
let start_date = Local.from_local_datetime(&start_date).unwrap();
|
||||
|
||||
let time = c.time().ok()?;
|
||||
let time =
|
||||
DateTime::from_timestamp_millis(time.seconds * 1000)?.with_timezone(&Local);
|
||||
|
|
Loading…
Reference in New Issue