diff options
| -rw-r--r-- | src/bin/git-autosave-daemon.rs | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/bin/git-autosave-daemon.rs b/src/bin/git-autosave-daemon.rs index a0066a5..39df4b8 100644 --- a/src/bin/git-autosave-daemon.rs +++ b/src/bin/git-autosave-daemon.rs @@ -2,7 +2,7 @@ use std::{collections::HashSet, time::Duration}; use auth_git2::GitAuthenticator; use git_autosave::{Config, authenticate::Inquirer, commit_autosave, push_autosaves}; -use git2::{RemoteCallbacks, Repository}; +use git2::{RemoteCallbacks, Repository, StatusOptions}; use happylock::{Mutex, ThreadKey}; use notify::{EventKind, INotifyWatcher, RecursiveMode}; use notify_debouncer_full::{ @@ -126,6 +126,14 @@ impl DebounceEventHandler for Watcher { if workdirs_to_autosave.contains(workdir) { continue; } + if let Ok(status) = repository.statuses(Some( + StatusOptions::new() + .include_untracked(true) + .include_ignored(false), + )) && status.is_empty() + { + continue; + } log::info!("Updated path: {:?}", &path); workdirs_to_autosave.insert(workdir.to_path_buf()); |
