我已经安装了git
和tk
,我可以运行git citool
来显示 Git GUI 并创建一个单身的提交,之后应用程序退出。不幸的是git gui
命令本身说
git: 'gui' 不是 git 命令。请参阅“git --help”
所以我被困住了。我如何
- 启用
git gui
作为命令 - 显示 Git GUI 直到我想退出它?
答案1
安装git
后tk
无法在 NixOS 上运行,因为git
无法看tk。与大多数 Linux 发行版不同,NixOS 没有/usr/lib
库的全局位置(例如 )。相反,可执行文件被修改为能够在 Nix 存储 ( /nix/store
) 中找到所需的库。
使用git gui
installgitFull
而不是git
.
这两个包实际上都来自同一个 Nix 表达式,但是在使用gitFull
该表达式时,它会包含对git gui
.
答案2
如果使用 home-manager / home.nix
,则需要设置package = pkgs.gitFull
:
programs.git = {
enable = true;
userName = "Firstname Lastname";
userEmail = "[email protected]";
package = pkgs.gitFull;
};
旁注:如果您愿意,还可以设置更多选项:
extraConfig = {
push = {
# Source: https://stackoverflow.com/a/72401899/873282
autoSetupRemote = true;
# Always push to the branch we pulled from
# See https://git-scm.com/docs/git-config#Documentation/git-config.txt-pushdefault for details
default = "current";
};
# Use SVN's ||| also in git - and remove matching lines in the conflict region
# See https://git-scm.com/docs/git-config#Documentation/git-config.txt-mergeconflictStyle for details
merge = { configStyle = "zdiff3"; };
# Colors in output
# Source: https://unix.stackexchange.com/a/44297/18033
color = { ui = "auto"; };
# Sort branches at "git branch -v" by committer date
branch = { sort = "-committerdate"; };
# tabs are 4 spaces wide
gui = { tabsize = 4; };
};