mirror of
https://github.com/gitui-org/gitui
synced 2026-05-23 00:48:35 +00:00
more logging/diagnostics when repo cant be opened
This commit is contained in:
parent
53988ba4e0
commit
7400d5bc68
4 changed files with 10 additions and 5 deletions
|
|
@ -20,6 +20,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|||
* simplify theme overrides [[@cruessler](https://github.com/cruessler)] ([#1367](https://github.com/extrawurst/gitui/issues/1367))
|
||||
* support for sign-off of commits [[@domtac](https://github.com/domtac)]([#1757](https://github.com/extrawurst/gitui/issues/1757))
|
||||
* switched from textwrap to bwrap for text wrapping [[@TheBlackSheep3](https://github.com/TheBlackSheep3/)] ([#1762](https://github.com/extrawurst/gitui/issues/1762))
|
||||
* more logging diagnostics when a repo cannot be opened
|
||||
|
||||
### Fixes
|
||||
* fix commit dialog char count for multibyte characters ([#1726](https://github.com/extrawurst/gitui/issues/1726))
|
||||
|
|
|
|||
|
|
@ -94,8 +94,8 @@ pub use tags::{
|
|||
};
|
||||
pub use tree::{tree_file_content, tree_files, TreeFile};
|
||||
pub use utils::{
|
||||
get_head, get_head_tuple, is_repo, repo_dir, stage_add_all,
|
||||
stage_add_file, stage_addremoved, Head,
|
||||
get_head, get_head_tuple, repo_dir, repo_open_error,
|
||||
stage_add_all, stage_add_file, stage_addremoved, Head,
|
||||
};
|
||||
|
||||
pub use git2::ResetType;
|
||||
|
|
|
|||
|
|
@ -25,13 +25,13 @@ pub struct Head {
|
|||
}
|
||||
|
||||
///
|
||||
pub fn is_repo(repo_path: &RepoPath) -> bool {
|
||||
pub fn repo_open_error(repo_path: &RepoPath) -> Option<String> {
|
||||
Repository::open_ext(
|
||||
repo_path.gitpath(),
|
||||
RepositoryOpenFlags::empty(),
|
||||
Vec::<&Path>::new(),
|
||||
)
|
||||
.is_ok()
|
||||
.map_or_else(|e| Some(e.to_string()), |_| None)
|
||||
}
|
||||
|
||||
///
|
||||
|
|
|
|||
|
|
@ -323,7 +323,11 @@ fn draw<B: Backend>(
|
|||
}
|
||||
|
||||
fn valid_path(repo_path: &RepoPath) -> bool {
|
||||
asyncgit::sync::is_repo(repo_path)
|
||||
let error = asyncgit::sync::repo_open_error(repo_path);
|
||||
if let Some(error) = &error {
|
||||
eprintln!("repo open error: {error}");
|
||||
}
|
||||
error.is_none()
|
||||
}
|
||||
|
||||
fn select_event(
|
||||
|
|
|
|||
Loading…
Reference in a new issue