在 Windows 上更新 Git Bash 后,仍然显示旧版本
Posted
技术标签:
【中文标题】在 Windows 上更新 Git Bash 后,仍然显示旧版本【英文标题】:After updating Git Bash on Windows, still shows older version 【发布时间】:2013-12-08 04:59:15 【问题描述】:在Git Bash
的下载站点上,它说您可以克隆它来更新它。我下载了它来安装它,但我开始真正进入Git
并且想从现在开始每次我想更新它时克隆它。我想我找到了我们需要克隆它的地方,经过大量搜索和比平时更少的文档。如果我是对的,它就在home
目录中,一直就在我的眼皮底下!
我事先用git --version
检查了版本号,然后在那个目录中克隆,然后重新检查了版本号两次它都说git version 1.8.3.msysgit.0
,但在下载站点上它说最新版本是1.8.4.3。
我没有找到难以捉摸的git
文件夹,还是Git Bash
团队直到最新版本发布后才让你直接克隆?例如,我知道 VirtualBox 就是这样做的。
我知道这有点像 this question 的重复,但我尝试了它的答案并且 PATH 变量甚至没有 Git
!
【问题讨论】:
你是从克隆的目录运行 git 吗?看起来不像那样。看起来您正在以其他方式运行它,在%PATH%
中查找 git 并找到您的旧安装。
我最初是下载的,我没有克隆它。我正在尝试克隆它以从现在开始对其进行更新。抱歉,如果我不清楚,我会更新我的问题。我对某些 Windows 内部结构不太熟悉,但如果我引用的答案是关于 %PATH%,那么我的里面没有 Git。
【参考方案1】:
我建议不要尝试更新它,而只需下载 msysgit 的便携式版本并将其解压缩到专用文件夹中,然后将其添加到路径中:
Current Portable msysgit download.
=> 我在(例如)C:\prgs\git\PortableGit-1.8.4-preview20130916
中解压缩了最新的一个。
=> 我将“c:\prgs\git\PortableGit-1.8.4-preview20130916\bin
”添加到我的PATH
。
现在,如果您想自动化下载/更新过程,我正在构建一个 Powershell 脚本,它可以做到这一点(适用于 git 和 30 个其他程序,包括 Mercurial、Subversion,还有 Python、Ruby、Go 等) :
senv:下载zip archive of senv,解压到一个路径并调用:
senv
第一次,您指定所有这些程序的下载位置:这些只是便携式软件:不修改注册表,不修改系统变量。 如果您不再需要这些程序之一,只需删除其安装文件夹即可。 就是这样。
但是每次您拨打senv -u
时,它都会检查他们各自的网页,如果检测到新版本,它会在其专用文件夹中下载/上传新版本,而不删除之前的版本。
【讨论】:
如果我可以问,你为什么推荐这个?克隆它有什么问题?再说一次,我只是想知道。 我绝对喜欢所有这些新的“便携式”程序——如果您不再需要它,只需将其删除。没有卸载 cr*p,之后没有挥之不去的文件,没有混乱,没有大惊小怪。漂亮。 @trysis 它允许单独安装,从一个版本到另一个版本。如果新版本有bug,很容易回退到之前安装的版本。 @trysis 我说的是在不同的文件夹中安装不同版本的 git。这并不意味着 Git 管理的存储库不能有多个分支。但是存储库与软件完全不同。最好将软件的多个版本放在不同的文件夹中,以选择最新的或正确的。但是您使用它管理的存储库可以拥有他们需要的任意数量的分支。 @trysis powershell 脚本目前正在运行,但肯定可以改进。欢迎提出问题和拉取请求。以上是关于在 Windows 上更新 Git Bash 后,仍然显示旧版本的主要内容,如果未能解决你的问题,请参考以下文章
.bash_history 不会在 Git for Windows (git bash) 中更新
如何在 Windows 上将 man 和 zip 添加到“git bash”安装中