我知道以下命令从标准输入中获取文本并将其用作提交日志的消息:
echo "hello world" | git commit -F -
Run Code Online (Sandbox Code Playgroud)
但是,如果您只是拥有它,git commit -F -那么它会将您带到我所说的“标准输入模式”,其中 Git Bash 显示消息(reading log message from standard input)并等待某种输入......我猜。我的问题是这种模式到底是什么,可以使用吗?我已经输入的文本,并退出使用ctrl-z和ctrl-c,但曾在其提交成功后运行没有运气。它只会让我回到提示。
问题:在“标准输入模式”下实际发生了什么,可以用来成功输入提交日志消息吗?
编辑:我试过了ctrl-d,但没有任何改变。我正在使用 Windows 10。
我已经使用 Git-bash 安装了 wp-cli,并创建了相关的 PATH 变量。
我现在可以在 Windows CMD 中输入“wp”并且它可以工作,但是 Git-bash 无法识别该命令。
我必须怎么做才能使用 Git-bash,为什么它不能开箱即用?
我正在尝试使用我们在工作中使用的 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
我知道我在这里遗漏了一些非常愚蠢的东西,但是当我查看文档时,我只是眼花缭乱。任何帮助将不胜感激。
回到 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 没有响应。
我想在每次打开 Windows 时以管理员身份运行 git bash。
我的操作系统是 Windows 10 家庭版 64 位。
我的应用程序有问题。因为之前当我创建一个应用程序时它可以工作,但是现在,它向我显示了这个错误,我不知道为什么以及我必须做些什么来修复它。
你有什么想法可以帮助我吗?(这是一个 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) 我想将 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)
输出:
我错过了什么?
我正在对 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 会挂起?
语境:
我在我的同事 Windows 10 机器上尝试克隆私有 GitHub 存储库时遇到了这个问题。
重现步骤:
git clone [http-link-to-prviate-repo]
预期的:
我的黑客解决方案:

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

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