windows上的msysgit--如果有,我应该注意什么?
这与最近发生的另一件事有关 安装msysgit时,安装程序会显示与系统路径相关的3个选项:windows上的msysgit--如果有,我应该注意什么?,windows,git,version-control,msysgit,Windows,Git,Version Control,Msysgit,这与最近发生的另一件事有关 安装msysgit时,安装程序会显示与系统路径相关的3个选项: 永远不要改变windows环境。使用此选项,您必须使用“bash”shell来处理git 将git\bin目录添加到PATH环境变量中,但不要覆盖某些内置的windows工具。同事ian Gabe Moothart认为这个选项会使一些git操作失败!这些行动是什么?我应该担心他们吗 与2相同,但覆盖某些默认系统工具。这些工具是什么?窗户的哪些部分依赖于它们?这在实践中会有伤害吗 我想到了另一个问题,与系统
除非我弄错了,否则您应该能够确保主git二进制文件位于路径中,然后该二进制文件应该负责引用其他git组件……但我没有对此进行测试。如果您打算从cygwin提示符运行git,MSYS git安装程序建议选择2。cygwin环境确保git依赖项在您的路径中。如果您选择此选项,然后从windows命令提示符调用git,则将找不到git所依赖的所有unix-y命令行实用程序。IIRC,git本身部分实现为bash脚本。我不知道哪些操作会失败,但我认为git不会以这种方式可用 我没有选项3覆盖的系统工具列表(安装程序中提到find.exe),但这只会影响到您是批处理脚本忍者。在命令行中,
find
现在将引用该名称的unix实用程序,而不是windows附带的exe。它不会以任何方式损害windows本身
只需使用剪刀运行并选择选项3:-)您可能需要注意:
- 所有git命令都不存在。在2009年3月初的MSysGit1.6.2上:archimport、cvsexportcommit、cvsimport、cvsserver、filter branch、instaweb、send email和shell。)
- 在MSysGit1.6.2之前,git svn是()。
问题是git svn需要subversion的perl绑定,您只能将它们构建为可动态加载的模块。MSysGit的perl版本不支持动态加载模块 - 有关MSysGit的所有详细信息最好在
bash
,后者只是添加了在它之外使用Git的方法
对于后一个选项,msysgit将常见Linux实用程序的Windows版本添加到路径
。这包括查找
,杀死
和排序
,以及cp
,ls
,rm
,以及大约20-30个其他
前3个(以及类似的)的问题是,它们存在于OSs中,并且在每个OSs中的功能不同
如果你知道你将使用哪一个,这不是一个巨大的考验,但是任何开发的应用程序都会期待一个,然后得到另一个,这肯定会让你大吃一惊
为了防止冲突,在Git仍能按预期工作的情况下,您可以创建一个简单的批处理脚本,只为会话调整路径。(例如,
readygit.bat
)
相应地调整C:\Git\bin
。但是,只需运行此命令并在cmd
中使用Git即可
使用此选项,您可以使用安装选项3并安全地从系统的路径中删除C:\Git\bin
,从而消除Windows应用程序的任何混淆,而不会混淆Git
我目前在应用程序中使用类似的脚本,包括find
当您在Windows上使用Windows GUI并创建第一个存储库时,不要为存储库目录键入名称“.git”。(然后它会创建一个,然后在下面创建另一个.git文件夹,当你最后想看的时候)浏览到包含你的源代码的文件夹,然后——只需选择那个文件夹!将为您创建存储库目录“.get”
然后在未分级的更改中看到文件,单击文件名旁边的小页面图标,将其移动到分级更改中
一定要用剪刀跑,然后选择选项3。没有人再从windows命令行使用kill、sort或find了。AFAIK,windows总是保留大小写。当名称为“全部大写”时,Windows资源管理器将其显示为小写,但文件保留为大写。这是错误的,但如果您找到支持文章,则会有所帮助。:)这
@echo off
setlocal
set PATH=C:\Git\bin;%PATH%
cmd