add bisect information and update man page
This commit is contained in:
parent
6b7a176a70
commit
2377c041d9
3 changed files with 23 additions and 3 deletions
5
XD.1
5
XD.1
|
|
@ -26,6 +26,7 @@ tab(;) allbox;
|
||||||
c;l.
|
c;l.
|
||||||
:;default
|
:;default
|
||||||
\;;in a git repo
|
\;;in a git repo
|
||||||
|
=;in a git repo during a bisect
|
||||||
8;in a git repo with stashed changes
|
8;in a git repo with stashed changes
|
||||||
X;in a git repo during a merge
|
X;in a git repo during a merge
|
||||||
O;in a git repo during a rebase
|
O;in a git repo during a rebase
|
||||||
|
|
@ -56,8 +57,8 @@ c;l.
|
||||||
returns the number that was passed in to allow the user to re-run the program
|
returns the number that was passed in to allow the user to re-run the program
|
||||||
and get the same results. If there's an internal error
|
and get the same results. If there's an internal error
|
||||||
.Nm
|
.Nm
|
||||||
returns 1. If you wish to find out more infomation about the error enable ERR
|
returns 1. If you wish to find out more infomation about the error pass in
|
||||||
in the config.mk.
|
-Derr at build time.
|
||||||
.Sh OPTIONS
|
.Sh OPTIONS
|
||||||
.Ss -v
|
.Ss -v
|
||||||
Print version information to stdout and exit.
|
Print version information to stdout and exit.
|
||||||
|
|
|
||||||
14
src/Git.zig
14
src/Git.zig
|
|
@ -114,6 +114,20 @@ pub fn inRebase(self: *Git) bool {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn inBisect(self: *Git) bool {
|
||||||
|
const s = perf.s();
|
||||||
|
defer perf.e(s, @src());
|
||||||
|
|
||||||
|
const path = std.fs.path.join(self.allocator, &[_][]const u8{
|
||||||
|
std.mem.span(self.git_path.ptr),
|
||||||
|
"BISECT_LOG",
|
||||||
|
}) catch return false;
|
||||||
|
defer self.allocator.free(path);
|
||||||
|
|
||||||
|
std.fs.cwd().access(path, .{ .mode = .read_only }) catch return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
pub fn hasStaged(self: *Git) bool {
|
pub fn hasStaged(self: *Git) bool {
|
||||||
const s = perf.s();
|
const s = perf.s();
|
||||||
defer perf.e(s, @src());
|
defer perf.e(s, @src());
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,12 @@ pub fn main() u8 {
|
||||||
var git = if (config.git) try @import("Git.zig").init(allocator) orelse null;
|
var git = if (config.git) try @import("Git.zig").init(allocator) orelse null;
|
||||||
defer if (config.git and git != null) git.?.deinit();
|
defer if (config.git and git != null) git.?.deinit();
|
||||||
if (config.git and git != null) {
|
if (config.git and git != null) {
|
||||||
if (git.?.hasStashes()) {
|
if (git.?.inBisect()) {
|
||||||
|
face[@intFromEnum(FaceParts.eyes)] = .{
|
||||||
|
.symbol = '=',
|
||||||
|
.explanation = "The current git repo is bisecting.",
|
||||||
|
};
|
||||||
|
} else if (git.?.hasStashes()) {
|
||||||
face[@intFromEnum(FaceParts.eyes)] = .{
|
face[@intFromEnum(FaceParts.eyes)] = .{
|
||||||
.symbol = '8',
|
.symbol = '8',
|
||||||
.explanation = "The current git repo has stashed changes.",
|
.explanation = "The current git repo has stashed changes.",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue