如何添加一个上下文(又名右键单击)菜单到windows资源管理器,当单击时,在当前资源管理器文件夹中打开git-bash控制台?
当前回答
尝试更新git。对于windows用户,您可以通过cmd简单地输入命令“git update-git- For -windows”来更新git。
当完成后,你可以简单地在你想要打开gitbash的目录内右键单击,并检查它是否显示“gitbash here”。如果它没有显示任何东西,试着在那里寻找“显示更多选项”并点击它。现在,你可以看到了。
其他回答
使用Shift + F10打开选项菜单,右键单击会出现,然后点击s到git bash这里。
除了理论和最小示例的答案外,请参阅Git .reg文件的示例(不仅是指令),该文件具有用户友好的名称、快捷键(&在用户友好的名称中)和“win-registry-snippet”存储库中的图标
另一种选择,但使用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
}
什么也不做。
只要打开你的git bash终端,输入:
git update-git-for-windows
一旦更新完成,这将自动添加“Git Bash here”到您的上下文菜单。
参考这个:https://stackoverflow.com/a/65467670
@Shaswat Rungta说:“我认为问题更多的是如何在安装结束后添加它。”
在我的PC(Windows 7)上,我认为在安装Visual Studio 2017后,“Git Bash here”命令消失了。
我通过下载并重新安装Git来解决这个问题。 注意:“安装Git for Windows时,默认情况下上下文菜单选项不是‘开启’的。你必须在安装过程中选择它们。”——@nbushnell (我这样做了)
推荐文章
- 如何在Visual Studio中删除未推送的外向提交?
- Git在两个不同的文件之间的差异
- 我如何使用vimdiff来解决git合并冲突?
- 如何将更改提交到另一个预先存在的分支
- 为什么使用'git rm'来删除文件而不是'rm'?
- 我如何安装imagemagick与自制?
- 致命:git-write-tree:错误构建树
- Git克隆远程存储库的特定版本
- git隐藏的意图用例是什么?
- 从远程Git存储库检索特定的提交
- 如何配置git bash命令行补全?
- 我如何迫使git拉覆盖每一个拉上的一切?
- 撤销“git add <dir>”?
- 是否可以在不先签出整个存储库的情况下进行稀疏签出?
- 如何移除SSH密钥?