Skip to content

Commit 99787c0

Browse files
committed
Add config level for worktrees
Use the new support in libgit2 for the worktree-config extension.[1] [1]: https://git-scm.com/docs/git-worktree/2.35.1#_configuration_file
1 parent 3da58f3 commit 99787c0

File tree

3 files changed

+6
-1
lines changed

3 files changed

+6
-1
lines changed

libgit2-sys/lib.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -868,7 +868,8 @@ git_enum! {
868868
GIT_CONFIG_LEVEL_XDG = 3,
869869
GIT_CONFIG_LEVEL_GLOBAL = 4,
870870
GIT_CONFIG_LEVEL_LOCAL = 5,
871-
GIT_CONFIG_LEVEL_APP = 6,
871+
GIT_CONFIG_LEVEL_WORKTREE = 6,
872+
GIT_CONFIG_LEVEL_APP = 7,
872873
GIT_CONFIG_HIGHEST_LEVEL = -1,
873874
}
874875
}

src/call.rs

+1
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ mod impls {
166166
ConfigLevel::XDG => raw::GIT_CONFIG_LEVEL_XDG,
167167
ConfigLevel::Global => raw::GIT_CONFIG_LEVEL_GLOBAL,
168168
ConfigLevel::Local => raw::GIT_CONFIG_LEVEL_LOCAL,
169+
ConfigLevel::Worktree => raw::GIT_CONFIG_LEVEL_WORKTREE,
169170
ConfigLevel::App => raw::GIT_CONFIG_LEVEL_APP,
170171
ConfigLevel::Highest => raw::GIT_CONFIG_HIGHEST_LEVEL,
171172
}

src/lib.rs

+3
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,8 @@ pub enum ConfigLevel {
385385
Global,
386386
/// Repository specific config, e.g. $PWD/.git/config
387387
Local,
388+
/// Worktree-specific config, e.g. $GIT_DIR/config.worktree
389+
Worktree,
388390
/// Application specific configuration file
389391
App,
390392
/// Highest level available
@@ -963,6 +965,7 @@ impl ConfigLevel {
963965
raw::GIT_CONFIG_LEVEL_XDG => ConfigLevel::XDG,
964966
raw::GIT_CONFIG_LEVEL_GLOBAL => ConfigLevel::Global,
965967
raw::GIT_CONFIG_LEVEL_LOCAL => ConfigLevel::Local,
968+
raw::GIT_CONFIG_LEVEL_WORKTREE => ConfigLevel::Worktree,
966969
raw::GIT_CONFIG_LEVEL_APP => ConfigLevel::App,
967970
raw::GIT_CONFIG_HIGHEST_LEVEL => ConfigLevel::Highest,
968971
n => panic!("unknown config level: {}", n),

0 commit comments

Comments
 (0)