fetch before fast forward on loop
This commit is contained in:
parent
5fcfbcb11c
commit
6c36757c51
2 changed files with 19 additions and 1 deletions
|
@ -39,7 +39,11 @@ struct Args {
|
|||
)]
|
||||
create: bool,
|
||||
|
||||
#[arg(short = 's', long, help = "Exit on push errors instead of ignoring")]
|
||||
#[arg(
|
||||
short = 's',
|
||||
long,
|
||||
help = "Exit on push and unknown host errors instead of ignoring them"
|
||||
)]
|
||||
strict: bool,
|
||||
}
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@ struct OpenedRepository {
|
|||
path: String,
|
||||
remotes: Vec<String>,
|
||||
cfg: Config,
|
||||
ssh: bool,
|
||||
}
|
||||
|
||||
impl Refractr {
|
||||
|
@ -287,6 +288,18 @@ impl Refractr {
|
|||
2,
|
||||
format!("Interval for {} has arrived, pulling", repos[i].cfg.from),
|
||||
);
|
||||
if let Err(e) = self.fetch(
|
||||
&repos[i].repo,
|
||||
&repos[i].cfg.branches,
|
||||
repos[i].ssh,
|
||||
&repos[i].cfg.git.ssh_identity_file,
|
||||
self.strict.clone(),
|
||||
) {
|
||||
common::error(
|
||||
format!("failed to fetch repo {}: {}", repos[i].cfg.from, e),
|
||||
ExitCode::FetchError,
|
||||
);
|
||||
}
|
||||
|
||||
let _ = self.fast_forward(&repos[i].path, &repos[i].cfg.branches);
|
||||
if let Err(e) = self.push_remotes(&repos[i].cfg, &repos[i].repo, &repos[i].remotes) {
|
||||
|
@ -452,6 +465,7 @@ impl Refractr {
|
|||
path: repo_dir,
|
||||
remotes,
|
||||
cfg: cfg.config,
|
||||
ssh,
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue