intigrate with .gitignore

This commit is contained in:
Evan Almloff committed 2023-01-13 16:25:03 -06:00
1 parent cc983dc091
commit d642e53a2b
2 files changed
+13 -2

No files matched your search

+11 -1
View File
@@ -157,6 +157,10 @@ pub fn init<Ctx: HotReloadingContext + Send + 'static>(cfg: Config<Ctx>) {
// watch for changes
std::thread::spawn(move || {
// try to find the gitingore file
let gitignore_file_path = crate_dir.join(".gitignore");
let gitignore_file = gitignore::File::new(&gitignore_file_path.as_path());
let mut last_update_time = chrono::Local::now().timestamp();
let (tx, rx) = std::sync::mpsc::channel();
@@ -210,7 +214,13 @@ pub fn init<Ctx: HotReloadingContext + Send + 'static>(cfg: Config<Ctx>) {
// skip non rust files
matches!(path.extension().and_then(|p| p.to_str()), Some("rs" | "toml" | "css" | "html" | "js")) &&
// skip excluded paths
!excluded_paths.iter().any(|p| path.starts_with(p))
!excluded_paths.iter().any(|p| path.starts_with(p)) && match &gitignore_file{
Ok(file) => match file.is_excluded(path){
Ok(excluded) => !excluded,
Err(_) => true,
},
Err(_) => true,
}
})
.collect::<Vec<_>>();