问题描述
|
我在D:\\ mingw中安装了MinGW。我在C:\\ Program Files \\ git中安装了Git。我想使用MinGW开发/编译并使用git进行版本控制。
我想我必须使用正确的路径,但是有些路径是硬编码的。就像msys挂载脚本调用/bin/msysmnt.exe
所以我有2个选择:
1.使用git的shell(以便在提示时向我显示分支)
2.使用mingw(msys)的shell-具有正确的路径
无论选择哪种方式,我都必须使其他功能起作用。
解决方法
小更新:自Git 2.x发行以来,Windows的Git基于MSYS2,并以32位和64位二进制格式提供。它仍然是一个fork,并且不能与真正的MSYS2互换。
您必须了解的一件事:msysgit(您正在使用的git)是具有附加git功能的msys的分支。 msys shell中包含许多Unix工具(有关完整列表,请参见msysgit / bin文件夹)。
可能可以在msysgit bin文件夹中添加其他msys工具,但是我不会冒险。
鉴于此,我认为最好将工具链添加到msysgit路径(使用bash配置文件或msysgit树中的任何内容)并使用它。如果缺少特定的实用程序,请从MinGW-msys树中添加它,并希望它能正常运行。
或者,只需使用cmd.exe中的msys-git。从最新版本开始,它运行良好(包括git show,编辑提交消息等)。为此,将/ cmd目录添加到PATH,然后可以使用所需的所有git命令。这是我的工作,因为msys是一种拖累,但是对于git在Windows上运行是必不可少的。
更新:在任何类型的MSYS下向PATH添加目录的详细说明:
export PATH=/d/MinGW/bin:$PATH
或恶意地找到/ etc / profile并更改此部分
if [ $MSYSTEM == MINGW32 ]; then
export PATH=\".:/usr/local/bin:/mingw/bin:/bin:$PATH\"
else
export PATH=\".:/usr/local/bin:/bin:/mingw/bin:$PATH\"
fi
至:
if [ $MSYSTEM == MINGW32 ]; then
export PATH=\".:/usr/local/bin:/d/MinGW/bin:/bin:$PATH\"
else
export PATH=\".:/usr/local/bin:/bin:/mingw/bin:$PATH\"
fi
没有更干净的方法,因为msys-git用户禁用了香草msys中存在的fstab功能。
来自Nick的更新(我做了些什么使其工作):
我在C:\\Program Files\\Git\\etc
中创建了名为bash_profile
的文件。这是文件的内容:
export PATH=$PATH:/d/mingw/bin:/d/mingw/msys/1.0/bin
使和海湾合作委员会的工作。
sys4ѭ不随msysgit一起提供,因此如果您进行更新,则不会覆盖它。
,我通过打开c:\\ MinGW \\ msys \\ 1.0 \\ etc \\ profile(不在记事本中,没有回车符)并将Git放在MinGW shell上并添加:
export PATH=$PATH:/c/Program\\ Files\\ \\(x86\\)/Git/bin
在x86系统上,这将是:
export PATH=$PATH:/c/Program\\ Files/Git/bin
,更新:
现在msys带有git二进制包。
http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/
旧答案:
如果您使用的是最新的mingw和PortableGit,只需将git.exe(从PortableGitXXX.7z中提取文件)放入C:\\ MinGW \\ msys \\ 1.0 \\ bin \\
,使用msys2。
它的msys具有不错的软件包管理器(pacman)和构建系统(makepkg),是从arch linux移植的。我所有的devtools和git都有一个shell,