linux - bash:git pull 只有在它是最后一个命令时才有效

标签 linux bash git sh

平台:树莓派3B

请帮我解决这个问题,git pull 只有在它是最后一个命令时才有效,但我更早需要它。这对我来说很奇怪,我没有找到任何解决方案


工作

脚本.sh

#!/bin/bash
echo Hello World
git pull

sh script.sh 给出:

Hello World
Already up-to-date.

不工作

脚本.sh

#!/bin/bash
echo Hello World
git pull
echo Hello World

sh script.sh 给出:

Hello World
' is not a git command. See 'git --help'.


Did you mean this?
    pull
Hello World

最佳答案

文件的 EOL 格式 (CRLF) 错误。 CRLF 是来自在 Windows 应用程序上编写的文本文件的格式。 *NIX 使用 LF 作为 EOL 分隔符,因此您的解释器将一个奇怪的字符 (CR) 作为每一行内容的一部分,并将其作为您正在调用的命令的一部分传递给 git……这就是它中断的原因。运行dos2unix script.sh进行转换,使其可以被正确读取。

关于linux - bash:git pull 只有在它是最后一个命令时才有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53092711/

相关文章:

linux - 根据单元格值将 CSV 行拆分为多行

linux - Grep 递归和计数

git拒绝在没有代理的情况下连接

c - ENXIO 对于 i2c ioctl 意味着什么?

linux - 无法通过脚本文件导出变量

linux - 加速使用多个查找命令的 bash 脚本

git 列出上次更改提交的文件和文件夹

git - 在 GUI 中探索 git-diff 输出?

c - 如何将十六进制字符转换为 4 位二进制表示形式?

xml - 从两个不同内容之间的 XML 文件中获取数据