标签: git-bash

Git Bash for Windows 中`git commit -F -` 的“标准输入模式”有什么用?

我知道以下命令从标准输入中获取文本并将其用作提交日志的消息:

echo "hello world" | git commit -F -
Run Code Online (Sandbox Code Playgroud)

但是,如果您只是拥有它,git commit -F -那么它会将您带到我所说的“标准输入模式”,其中 Git Bash 显示消息(reading log message from standard input)并等待某种输入......我猜。我的问题是这种模式到底是什么,可以使用吗?我已经输入的文本,并退出使用ctrl-zctrl-c,但曾在其提交成功后运行没有运气。它只会让我回到提示。

问题:在“标准输入模式”下实际发生了什么,可以用来成功输入提交日志消息吗?

编辑:我试过了ctrl-d,但没有任何改变。我正在使用 Windows 10。

git git-commit git-bash

7
推荐指数
1
解决办法
3266
查看次数

wp-cli 适用于 windows cmd,但不适用于 Gitbash

我已经使用 Git-bash 安装了 wp-cli,并创建了相关的 PATH 变量。

我现在可以在 Windows CMD 中输入“wp”并且它可以工作,但是 Git-bash 无法识别该命令。

我必须怎么做才能使用 Git-bash,为什么它不能开箱即用?

cmd git-bash wp-cli

7
推荐指数
1
解决办法
1281
查看次数

Windows 的 docker --volume 格式

我正在尝试使用我们在工作中使用的 shell 脚本来设置我们的开发环境,并通过 Git Bash 将其重新用于我的 Windows 环境。

容器在shell脚本中的调出方式如下:

docker run \
--detach \
--name=server_container \
--publish 80:80 \
--volume=$PWD/var/www:/var/www \
--volume=$PWD/var/log/apache2:/var/log/apache2 \
--link=mysql_container:mysql_container \
--link=redis_container:redis_container \
web-server
Run Code Online (Sandbox Code Playgroud)

当我按原样运行时,它返回以下错误消息:

C:\Program Files\Docker\Docker\Resources\bin\docker.exe:来自守护进程的错误响应:无效的绑定挂载规范“/C/Users/username/var/docker/environments/development/scripts/var/log/apache2 ;C:\Program Files\Git\var\log\apache2": 无效的卷规范:'/C/Users/username/var/docker/environments/development/scripts/var/log/apache2;C:\Program Files\ Git\var\log\apache2':类型“bind”的挂载配置无效:挂载路径无效:'\Program Files\Git\var\log\apache2' 挂载路径必须是绝对的。请参阅“C:\Program Files\Docker\Docker\Resources\bin\docker.exe run --help”。

我做了一堆谷歌搜索和文档阅读,但我对 Docker 有点不知所措,我认为我错了。我尝试按如下方式设置容器:

docker run \
--detach \
--name=server_container \
--publish 80:80 \
--volume=/c/users/username/var/www:/var/www \
--volume=/c/users/username/var/log/apache2:/var/log/apache2 \
--link=mysql_container:mysql_container \
--link=redis_container:redis_container \
web-server
Run Code Online (Sandbox Code Playgroud)

它仍然会出现类似的错误消息。如果我删除冒号:/var/www 它会出现,但它似乎没有正确映射这些目录,那就是它不知道 C:\users\username\var\www = /var/www

我知道我在这里遗漏了一些非常愚蠢的东西,但是当我查看文档时,我只是眼花缭乱。任何帮助将不胜感激。

git-bash docker

7
推荐指数
2
解决办法
3198
查看次数

Ctrl+C 在 Git Bash 2.20.1 中不能使用 gradle

回到 Windows 7,Ctrl+C 可以很好地终止诸如 gradle 之类的任务。在 Windows 10 上,它没有。我升级到 Git Bash 2.20.1,它声称它已修复(找不到网络链接,发行说明是安装包的一部分并在本地查看)。

Ctrl+C 现在在 Git Bash 中以一种复杂的方式处理:它模拟了 Ctrl+C 在 Git CMD 中的处理方式,但是以细粒度的方式。

Ctrl+C 仍然对我不起作用。我通过右键单击资源管理器中的文件夹并选择“Git Bash Here”来启动 git bash

当我在 bash 终端空闲时(没有运行任务),Ctrl+C 似乎可以工作,但是例如 gradle 对 Ctrl+C 没有响应。

bash terminal windows-explorer ctrl git-bash

7
推荐指数
1
解决办法
1153
查看次数

如何在 Windows 上始终以管理员身份运行 Git Bash?

我想在每次打开 Windows 时以管理员身份运行 git bash。

我的操作系统是 Windows 10 家庭版 64 位。

bash elevated-privileges git-bash

7
推荐指数
1
解决办法
1万
查看次数

无法在 Git Bash (Windows) 中使用箭头键

我正在尝试在我的存储库中设置语义 UI,但由于某种原因,我无法使用箭头键在 Git Bash 中选择菜单选项。

在此处输入图片说明

按向下或向上只移动我的光标,它不会移动选择正确菜单选项的 > 图标。

git-bash semantic-ui

7
推荐指数
3
解决办法
5121
查看次数

npm start 问题(错误:spawn cmd ENOENT)

我的应用程序有问题。因为之前当我创建一个应用程序时它可以工作,但是现在,它向我显示了这个错误,我不知道为什么以及我必须做些什么来修复它。

你有什么想法可以帮助我吗?(这是一个 reactJS 应用程序)。

我检查了一些 stackoverflow 主题,但在我检查的任何地方,这都不是一个真正有效的答案。

events.js:180
      throw er; // Unhandled 'error' event
      ^

Error: spawn cmd ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:264:19)
    at onErrorNT (internal/child_process.js:456:16)
    at processTicksAndRejections (internal/process/task_queues.js:77:11)
Emitted 'error' event at:
    at Process.ChildProcess._handle.onexit (internal/child_process.js:270:12)
    at onErrorNT (internal/child_process.js:456:16)
    at processTicksAndRejections (internal/process/task_queues.js:77:11) {
  errno: 'ENOENT',
  code: 'ENOENT',
  syscall: 'spawn cmd',
  path: 'cmd',
  spawnargs: [ '/c', 'start', '""', '/b', 'http://localhost:3000/' ]
}
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! fix-react-module@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm …
Run Code Online (Sandbox Code Playgroud)

windows node.js git-bash reactjs

7
推荐指数
4
解决办法
2万
查看次数

Windows 终端中的 Git Bash 在单独的窗口中打开

我想将 git bash 添加到 windows 终端,但是,当我在终端中添加新的 git bash 选项卡时,git bash 会在不同的窗口中打开。

这是我的配置:

{
    "guid": "{--------------------}",
    "acrylicOpacity" : 0.75,
    "closeOnExit" : true,
    "colorScheme" : "Campbell",
    "commandline" : "C:\\Users\\anonymous\\AppData\\Local\\Programs\\Git\\git-bash.exe",
    "cursorColor" : "#FFFFFF",
    "cursorShape" : "bar",
    "fontFace" : "Consolas",
    "fontSize" : 10,
    "historySize" : 9001,
    "icon" : "C:\\Program Files\\Git\\mingw64\\share\\git\\git-for-windows.ico",
    "name" : "Git Bash",
    "padding" : "0, 0, 0, 0",
    "snapOnInput" : true,
    "useAcrylic" : true
}
Run Code Online (Sandbox Code Playgroud)

输出:

在此处输入图片说明

我错过了什么?

git git-bash windows-terminal

7
推荐指数
1
解决办法
3434
查看次数

如何忽略/恢复文件内容中大小写的更改?

我正在对 Microsoft Access VBA 代码进行版本控制,该代码通常不区分大小写。然而,变量名的情况在那时(由 Access 编译器或由开发人员)时不时地发生。这通常会导致我的 git 工作区发生巨大变化。

如何还原或忽略仅涉及文件内容大写或小写的更改?

一个例子:

git init
echo "public sub example()\nend sub" > mdlExample.ACM
#                ^-- lower e
git add --all
git commit --all --message "Initial Commit"
echo "public sub Example()\nend sub" > mdlExample.ACM
#                ^-- upper E
Run Code Online (Sandbox Code Playgroud)

我会喜欢这样的东西:

git restore --only-case-changes # not working
Run Code Online (Sandbox Code Playgroud)

进而:

git status
> On branch master
> nothing to commit, working tree clean
Run Code Online (Sandbox Code Playgroud)

git bash case-insensitive git-bash

7
推荐指数
2
解决办法
265
查看次数

为新的 2.32.0.windows.1 版本的 git 克隆私有 Repo 挂起

题:

为什么在使用默认值安装时克隆非公共存储库时 git-bash 会挂起?

语境:

我在我的同事 Windows 10 机器上尝试克隆私有 GitHub 存储库时遇到了这个问题。

重现步骤:

  1. 为 Windows 安装了最新版本的 git bash(因为在我写这篇文章时是 2.32.0.windows.1)。选择所有默认值。
  2. git clone [http-link-to-prviate-repo]

挂起 git clone 命令的截图

预期的:

  1. 用于输入用户名和密码信息的弹出窗口。

我的黑客解决方案:

  1. 安装 2.32.0 时。对于 Windows,请检查“启用对伪控制台的实验支持。”。

hack 选项选择的屏幕截图

这允许 bash 控制台为您提供通过 Web 浏览器或个人访问令牌进行身份验证的选项。

解决方法的屏幕截图

无关注:

我最初想在 Git 的 Github 问题页面上发布这个,但他们没有,所以我在这里。不确定这是否是发布此内容的合适位置,但我希望将其发布在某个地方,这样其他人就不会遇到同样的问题。

windows git git-bash

7
推荐指数
1
解决办法
428
查看次数