我的电脑上有 cygwin 和 msysgit。我正在尝试使用以下命令克隆 vim 包的存储库:
cd ~/.vim/bundle
git clone https://github.com/jelera/vim-javascript-syntax.git
Run Code Online (Sandbox Code Playgroud)
但是,当我运行 vim 时,它失败,报告错误E488: Trailing characters。这似乎是由行结尾CRLF而不仅仅是 引起的LF,这在我替换它们时得到确认。
当然,手动替换它们不是我想要的。我宁愿让 git 为我做这件事。但是,由于我使用我的计算机在 Windows 平台上进行开发,因此我不想修改任何全局设置。
是否有命令行开关可以让 git cloneLF EOLs只使用一个 repo ?
迁移到Windows后,我使用msysgit及其包含的bash shell,这对我来说很有用.但我有问题:我们的ant构建过程不会在那个shell中运行,我想使用Cygwin的xterms而不是Windows命令窗口,因为终端兼容性不足以运行我想要的其他所有内容那个窗口,等等.
我实际上已经在Windows命令shell中坚持使用msysgit,这样我就不必使用单独的窗口来构建,但是这会遇到更多问题:缺少cd- 并且文件完成会让我失望,大多数我想要管道的命令不存在,等等.
所以如果我转而使用Cygwin的git,或者更糟糕的是,在不同的时间使用它们,那么行结尾会咬我吗?Cygwin的git会期待一切,\n并认为它看到了变化,因为mSysGit \r\n在结账时转换成了吗?将Cygwin的git检查出来\n并混淆我的Windows Eclipse,我确信它应该是一切\r\n吗?
我安装了带有OpenSSH选项的msysgit.在Git bash中,我可以运行ssh-agent,它管理我的ssh密钥的密码.Hudson Git插件是否可以使用ssh-agent?目前,它在尝试克隆时挂起,无疑等待输入密码.
谢谢!
在Windows上使用Git Bash,如果我创建一个bash脚本,我在哪里放置它以便我可以从bash shell访问它?
基本上,我想创建一个bash shell脚本,用文件等做一些事情.
我想用一些参数从bash内部调用函数,然后脚本将完成它的工作.
我对这个环境完全陌生,所以我对bash的了解非常有限.
提前致谢.
Git对我的工作流程至关重要.我在带有3GB内存的四核机器上运行Windows XP上的MSYS Git,通常它具有响应性和灵活性.
突然出现一个问题,从Git Bash命令提示符运行任何命令需要> 30秒,包括ls或cd.有趣的是,从bash提示看起来喜欢ls运行得相当快,然后我可以看到输出ls,但是然后返回提示需要大约30秒.如果我切换到Windows命令提示符(通过cmd从开始菜单运行)git相关命令也需要永远,甚至只是运行.例如git status,在发生任何事情之前可能需要将近一分钟.有时这些过程根本无法完成.
请注意,我有"MSYS的Git"安装以及定期的"MSYS"对于喜欢的东西MinGW和make.
我认为问题与sh.exe位于C:\Program Files\Git\bin.当我ls从bash提示符运行时,或者当我git从Windows提示符调用时,任务管理器最多显示四个sh.exe进程的进程实例.
在这里,我等待ls返回,你可以看到任务管理器已经git.exe运行了四个实例sh.exe:

如果我ctrl-c在中间,ls我有时会得到包括以下内容的错误:
sh.exe": fork: Resource temporarily unavailable
0 [main] sh.exe" 1624 proc_subproc: Couldn't duplicate my handle<0x6FC> fo
r pid 6052, Win32 error 5
sh.exe": fork: Resource temporarily unavailable
Run Code Online (Sandbox Code Playgroud)
或者git status:for :git status …
在Win7框上读取时,在winXP框中创建的提交消息会生成警告.
我的名字包含特殊字符(ö),我想这是问题的根源,因为我的名字在提交中.我在尝试隐藏在winXP上创建的提交上的更改时看到了这个问题:
Warning: commit message does not conform to UTF-8.
我想检查用于在winXP上生成提交的编码,但无法找到.
$ git config --get i18n.commitencoding
在两台机器上都返回空白.
http://www.kernel.org/pub/software/scm/git/docs/git-commit.html似乎说git会检查提交对象中的编码.
git log,git show,git blame和friends查看提交对象的编码头,并尝试将日志消息重新编码为UTF-8,除非另有说明.
那很好,但是为什么git会抱怨win7而不是winXP?
msysgit版本在两台机器上都是相同的:1.7.4.msysgit.0.
我想知道为什么当我这样做:
git add <file>
Run Code Online (Sandbox Code Playgroud)
然后,我做:
git rm --cached <file>
Run Code Online (Sandbox Code Playgroud)
该文件在阶段área中保持已删除状态.
这里的例子如下:

我只是在寻找关于文件中"已删除"状态的说明.
谢谢
我发现这篇文章在Cygwin下编译鱼壳?谈论编译反对Cygwin的鱼.
为MSYS编译的指令是什么?(尤其是MSYSGIT)?
这就是我做的
这个过程失败了
$ ./configure
checking if autoconf needs to be run... no
checking if autoheader needs to be run... no
checking for g++... g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.exe
checking for suffix of executables... .exe
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are …Run Code Online (Sandbox Code Playgroud) 我已经通过net安装程序安装了msysgit.我最终得到了近2千兆的材料,其中包括git源和MinGW.
我有三个问题
我已经从MinGW.org获得了MinGW.现在我想我可以删除后者并继续使用msysgit发行版.无论如何,来自MinGW.org的MinGW随附mingw-get,可用于管理MinGW包.如何识别msysgit附带的软件包?或者,换句话说,(考虑到巨大的msysgit大小)剩下什么包?
鉴于整体大小和自Git构建以来,可以安全删除哪些文件夹而不影响正常的Git使用?这是假设我不需要再次构建Git.
最后这个版本应该被认为是便携版吗?如果没有,安装的注册表项或环境变量是什么?
本质上,我需要帮助来决定是否使用小型便携式Git并设置与MinGW的符号链接或使用巨大的一体化发行版并废弃旧的MinGW.org.
为什么在同一台机器上计算同一文件的SHA-1哈希会在Windows中和msysgit Git bash中产生两个完全不同的SHA-1哈希值?
SHA-1算法是不是要为所有操作系统中的同一文件生成相同的哈希值?
在Windows上(使用HashCheck):
文件hello.txt
22596363b3de40b06f981fb85d82312e8c0ed511
在msysgit的Git bash窗口内(同一台机器,同一个文件):
$ git hash-object hello.txt
3b18e512dba79e4c8300dd08aeb37f8e728b8dad