首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Windows 7中非常基本的git批处理

Windows 7中非常基本的git批处理
EN

Stack Overflow用户
提问于 2015-10-07 17:38:06
回答 1查看 246关注 0票数 1

简要说明

使用.bat文件将参数传递给git

通过运行批处理文件,以其他方式使用git。

免责声明

对于类似的问题,有很多答案,但在尝试了其中的大部分或全部失败后,我希望你不要一见钟情地给我一个重复的邮票。

我的系统

Windows 7,64位

git版本1.9.4.msysgit.2

挑战

我想使我的工作流程合理化,从导航到多个git repos,并运行git statusgit add --all等,只运行一个批处理。

其他帖子肯定表明这是可能的。我认为大多数用户都使用Unix,但是这一个至少让我在Windows上运行,这样我就可以测试它了。然而,当涉及到将命令传递给git bash时,我遇到了与文章中的OP相同的问题,对于像我这样的完全初学者来说,如果您想在工作流程中包含更多的命令,那么使用@Erik在同一篇文章中的建议似乎有点复杂。

按照@inf3rno在同一篇文章中的建议,我似乎可以更改文件夹,但不能使用这样的git命令:

代码语言:javascript
运行
复制
set bash=C:\Program Files (x86)\Git\bin\bash.exe
"%bash%" --login -i -c "exec "%1""
cd c:\repos\research
git status
pause

有人建议我如何修改上面的代码以使其正常工作吗?

顺便问一下,#!bin\bash这一个这样的帖子有什么关系?我以为我必须使用#!Program Files (x86)\Git\bin\bash,但我也没有运气.

不管怎样,谢谢你的建议!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-07 18:00:57

首先,卸载git1.9.4 (梅吉特,现在已经过时了):git for-windows将提供一个最近的狂欢(2013年与2005年)

只要将PortableGit-2.6.1-64-bit.7z.exe解压缩到任何您想要的位置,将C:\path\PortableGit-2.6.1-64-bit\bin添加到您的%PATH%中就可以了。

第二,下面的答案是关于执行任何bash脚本("%bash%" --login -i -c "exec "%1"":%1是要执行的bash脚本的路径/名称)

在bash脚本中使用的正确方法是#!/bin/bash (参见"什么是首选的巴什舍邦?")

根据最新的git 2.6,这将是:

代码语言:javascript
运行
复制
c:\prgs\git\PortableGit-2.6.1-64-bit\bin\bash.exe --login -i -c "exec ./myscript"

因为该文件夹应该位于%PATH%中:

代码语言:javascript
运行
复制
bash --login -i -c "exec ./myscript"

myscript是一个使用Unix样式eol (LF)的文件,而不是Windows样式(CRLF)

还请注意,任何名为git-myscript的bash脚本(即使在Windows上)都可以通过以下方式直接调用:

代码语言:javascript
运行
复制
git myscript

我在2012年描述了"在git shell中运行批处理文件“中用于执行git命令的另一种方法。

但是对于纯bash脚本来说,您需要使用bash --login -i -c "exec ./myscript"

对于使用unix风格编写bash脚本,可以从Notepad++SublimeText 3Atom.io中选择各种编辑器。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32998906

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档