不是在命令提示符,但在PowerShell和Windows终端,这是可能的。你甚至可以为终端自定义主题。以下是步骤: 1.很明显你需要Git作为开始。从Git website安装Git for windows 1.然后从“Windows商店”下载“Windows终端”应用程序。它具有多种功能和新功能,您可以在同一窗口打开不同终端的多个标签页等等。 1.安装“Windows终端”后,打开它,现在你应该使用PowerShell安装“Posh-Git”和“Oh-My-Posh”:(如果您尚未安装NuGet,则可能需要安装它。如果是这种情况,PowerShell命令行将询问您是否要安装NuGet。选择[Y]是。您可能还需要批准从“不受信任的存储库”PSGallery安装模块。选择[Y]是。)
@echo off
git.exe %*
set GITBRANCH=
for /f %%I in ('git.exe rev-parse --abbrev-ref HEAD 2^> NUL') do set GITBRANCH=%%I
if "%GITBRANCH%" == "" (
prompt $P$G
) else (
prompt $P $C$E[32;7;32;47m%GITBRANCH%$E[0m$F $G
)
if exist C:\Apps\cd-git.bat doskey cd=C:\Apps\cd-git.bat $*
光盘-git.bat
@echo off
CD %*
where git >nul 2>&1
if %errorlevel% neq 0 (
goto :eof
)
for /f "usebackq tokens=* delims=" %%g in (`git rev-parse --is-inside-work-tree ^>nul 2^>^&1 ^&^& git branch --show-current`) do (
set branchname=%%g
)
if "%branchname%"=="" (
prompt $p$_$$$s
) else (
prompt $p $c$e[36m%branchname%$e[0m$f$_$$$s
)
set branchname=
结果
示例:启动一个新的cmd并导航到一个git仓库。
Microsoft Windows [Version 10.0.19041.2673]
(c) Microsoft Corporation. All rights reserved.
C:\Users>cd \Develop\git-test
C:\Develop\git-test (main)
$ cd ..
C:\Develop
$
7条答案
按热度按时间fhg3lkii1#
您无法从基于Windows的“命令提示符”中执行此操作。但是,有一个环境可以在Windows环境之上运行,它可以。
运行Git windows安装程序并允许安装git后,可以从上下文菜单调用git-bash。
默认情况下,git-bash环境会显示您所在的分支。
xmd2e60i2#
不是在命令提示符,但在PowerShell和Windows终端,这是可能的。你甚至可以为终端自定义主题。以下是步骤:
1.很明显你需要Git作为开始。从Git website安装Git for windows
1.然后从“Windows商店”下载“Windows终端”应用程序。它具有多种功能和新功能,您可以在同一窗口打开不同终端的多个标签页等等。
1.安装“Windows终端”后,打开它,现在你应该使用PowerShell安装“Posh-Git”和“Oh-My-Posh”:(如果您尚未安装NuGet,则可能需要安装它。如果是这种情况,PowerShell命令行将询问您是否要安装NuGet。选择[Y]是。您可能还需要批准从“不受信任的存储库”PSGallery安装模块。选择[Y]是。)
1.现在使用
notepad $PROFILE
打开您的“PowerShell”配置文件,并将以下行添加到文件末尾:(这是与“Windows终端”配置文件不同的配置文件。PowerShell配置文件是每次启动PowerShell时运行的脚本。)。如果Set-PoshPrompt
在此处不起作用,请尝试改用Set-Theme
命令(https://superuser.com/questions/1629589/powershell-theming-doesnt-work-set-theme-not-found)。1.现在您可以看到终端上的一些字符是方形的,因为默认字体不支持它们。(根据终端的字体,您可能没有看到此问题。如果您看到所有字符都很好,而不是方形,跳过这一步)你想安装“Cascadia PL”字体来支持这些字符。2从Cascadia Code release page下载它们。您需要安装这些版本的字体,以使其支持以下字符:
1.然后,在Windows终端中,按
Ctrl+,
打开“settings.json”中的Windows终端配置文件设置,并将这些行添加到“配置文件”的“默认值”部分,如下所示:How to go to the Windows Terminal settings picture guide
Where to change the font face picture guide
PS 1:如果你想在集成终端上有这些改变,比如VS代码上的那个,你应该在VS代码的设置中添加这一行:
PS 2:想了解更多关于“Oh-My-Posh”的内容,改变一下它的主题,请访问Oh-My-Posh's github page获取更多信息。
资料来源:
https://learn.microsoft.com/en-us/windows/terminal/tutorials/powerline-setuphttps://www.hanselman.com/blog/how-to-make-a-pretty-prompt-in-windows-terminal-with-powerline-nerd-fonts-cascadia-code-wsl-and-ohmyposh
mwecs4sa3#
这是我正在使用的git.bat,我从下面的链接中得到了答案:
https://www.nu42.com/2016/05/display-git-branch-windows-command-prompt.html
首先,在一个文件夹中创建git.bat文件,然后将该文件夹添加到PATH中git.exe行的前面(我假设你已经安装了git.exe),这样可以确保每次你在命令行中输入git时,都会触发新的git.bat而不是git.exe。
mm5n2pyu4#
如果您使用的是Windows PowerShell,您可以通过在PowerShell窗口中运行以下函数来覆盖标准的“Prompt”函数。这将使它检测Git存储库并在提示字符串中列出Git分支:
在PowerShell版本5.1.17763.592上进行了测试。
若要在所有PowerShell命令窗口中应用此提示符更改,请将此函数放入C:\Users\username\Documents\WindowsPowerShell中名为profile.ps1的文件中。此后打开的任何PowerShell命令窗口在位于Git存储库的一部分目录中时都应显示Git提示符。
lyr7nygr5#
是的,你可以。你可以创建一个脚本,命名为'gb.bash',然后添加下面的代码
然后转到环境变量,并将包含此脚本的文件夹添加到路径中。
有了这些,只要在git仓库中的终端上启动命令'gb',分支名称就会放在当前文件夹的路径上。
目前,这个解决方案需要你手动启动命令'gb'来触发脚本。但是,我相信还有一种方法可以在你启动CMD时自动触发脚本。我会在某个时候研究一下并更新这个答案。
我从这两个来源得到了解决方案:
Show git branch in Windows command prompt
Display git branch in Windows command prompt
免责声明:切换到新分支后,您必须触发'gb'以更新显示的分支名称。
70gysomp6#
我正在使用babun(已停产)
它为git提供了一个很棒的命令行视图,它还支持上下文菜单,可以在任何位置右击打开。
dzhpxtsq7#
@法里德·肖克里不完全正确。
不是在命令提示符中,而是在PowerShell [...]中
没有本机方法,但您可以使用 AutoRun、
Doskey
、Prompt
和自定义批处理脚本自定义cmd行为。溶液
1.创建一个批处理脚本
cd-git.bat
(见下文),我们将其放在 C:\Apps 中。字符串值:
光盘-git.bat
结果
示例:启动一个新的cmd并导航到一个git仓库。
只要你
cd
到一个git仓库目录,它的当前分支就会显示在括号中。解释
doskey
命令为cd
命令创建新别名(宏),但仅当我们的自定义批处理脚本cd-git.bat
存在时。doskey
cd别名确保通过使用cd
执行cd-git
。cd-git
1.最重要的是:
cd
s到请求的目录中。1.检查
git
命令是否可用。1.如果有,它检查当前目录是否有分支名称。
1.如果是,则将提示更改为同时显示分支名称。
参考文献