如何添加一个上下文(又名右键单击)菜单到windows资源管理器,当单击时,在当前资源管理器文件夹中打开git-bash控制台?
当前回答
另一种选择,但使用PowerShell脚本。
这基本上是一个PowerShell脚本,它几乎与这个答案相同(它也添加了图标)。
创建文件(addOpenGitBashHereContextMenu.ps1),粘贴下面的代码,并从PowerShell运行它。
您可能需要更改exePath以指向您的git可执行文件。 也改变contextMenuText如果你想改变上下文菜单中的文本。
$exePath = $env:USERPROFILE + '\scoop\apps\git\current\git-bash.exe'
$contextMenuText = 'Open Git Bash Here'
$regEntryName = 'git_shell'
$regPathShell = 'HKCU:\SOFTWARE\Classes\Directory\Background\shell'
$regPathContextMenu = $regPathShell + '\' + $regEntryName
$regPathCommand = $regPathContextMenu + '\command'
$user = $env:UserName
echo "Setting '$contextMenuText' context menu..."
echo " User name: '$user'"
echo " Register path: '$regPathCommand'"
echo " Executable path: '$exePath'"
# Key: shell
If (-NOT (Test-Path $regPathShell)) {
New-Item -Path $regPathShell
}
# Key: regEntryName
If (-NOT (Test-Path $regPathContextMenu)) {
New-Item -Path $regPathContextMenu -Value $contextMenuText
# Add Icon to context menu
Set-ItemProperty -Path $regPathContextMenu -Name 'Icon' -Value $exePath
}
# Key: command
If (-NOT (Test-Path $regPathCommand)) {
New-Item -Path $regPathCommand -Value $exePath
}
其他回答
对我有用的几乎是这个,但有以下REGEDIT路径: HKEY_LOCAL_MACHINE/SOFTWARE/Classes/Directory/background/shell,在这里我创建了密钥Bash,值是我想要显示的名称,然后在这个命名命令下创建了另一个密钥,值作为git-bash.exe的路径
我在Windows 10上安装了一个新的git,由于某种原因没有自动添加这个(git版本2.12.0 64bit)
当你在“https://git-scm.com/downloads”中安装git-scm时,取消位于安装窗口最底部的“只显示新选项”
一定要检查
Windows资源管理器集成 Git Bash在这里 Git GUI在这里
单击Next,您就可以开始了!
你可以安装TortoiseGit为Windows和包括集成在上下文菜单。 我认为它是在Windows上使用Git的最佳工具。
尝试更新git。对于windows用户,您可以通过cmd简单地输入命令“git update-git- For -windows”来更新git。
当完成后,你可以简单地在你想要打开gitbash的目录内右键单击,并检查它是否显示“gitbash here”。如果它没有显示任何东西,试着在那里寻找“显示更多选项”并点击它。现在,你可以看到了。
通常这里的git bash只能在目录上运行,所以你必须上一个目录,右键单击前一个目录,然后在这里选择git bash(当然在Windows操作系统上)。 注意:目录内的上下文菜单没有git bash here选项。
推荐文章
- 为什么我需要显式地推一个新分支?
- 如何撤消最后的git添加?
- Rubymine:如何让Git忽略Rubymine创建的.idea文件
- Gitignore二进制文件,没有扩展名
- Git隐藏错误:Git隐藏弹出并最终与合并冲突
- 了解Git和GitHub的基础知识
- 没有。Git目录的Git克隆
- Git与Mercurial仓库的互操作性
- 忽略git中修改(但未提交)的文件?
- “git restore”命令是什么?“git restore”和“git reset”之间有什么区别?
- Git合并与强制覆盖
- Git拉另一个分支
- 在Bash命令提示符上添加git分支
- 如何更改Git日志日期格式
- git pull -rebase和git pull -ff-only之间的区别