git 添加有时在 bash 脚本中不起作用
git add sometimes doesnt work in bash script
另一个 git 问题的别名。
在我工作的地方,我们有一个相当不寻常的工作流程,所以我构建了一个 gui 来管理提交
#!/bin/bash
cd /my/git/repo/
git add -u
git add -A
git commit -m
git pull
git push
git status
然后我 运行 通过单击我的 webUI 上的提交按钮来 运行 这个脚本,它只是 运行 这个 bash 带有 phps shell_exec 和 return 的脚本git 状态输出到 gui。
问题是有时(不足以查明问题所在)脚本失败并响应目录中仍有未暂存的文件,从那里开始工具损坏,直到手动 add/commit完成了。
(当我可以重现一个漂亮干净的错误消息时 post 会出现错误消息)
在添加中使用 --force 确实解决了这个问题,但 --force 也忽略了。git忽略,我想在不使用 -f
的情况下修复它
有没有办法强制添加目录,同时仍然遵守 .gitignore?
感谢您的宝贵时间!
编辑:这是错误
[master e02cb4b] test 2 files changed, 6 insertions(+), 3 deletions(-)
Already up-to-date.
On branch master Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: ANN/ANN3_1/ann-styles-varB.css no changes added to commit
(use "git add" and/or "git commit -a")
感谢评论。
我们发现该错误是由于硬件限制引起的,并且通过将该工具镜像到具有更快硬盘驱动器/raid 阵列的服务器来解决,因为程序员可以在提交和推送之间更新文件或 devbox 糟糕的硬盘驱动器可能只是被锁定了。
所以解决方案不在代码中,但我确实将 git 添加更改为单个
git add -A .
现在可以完美运行了。
另一个 git 问题的别名。 在我工作的地方,我们有一个相当不寻常的工作流程,所以我构建了一个 gui 来管理提交
#!/bin/bash
cd /my/git/repo/
git add -u
git add -A
git commit -m
git pull
git push
git status
然后我 运行 通过单击我的 webUI 上的提交按钮来 运行 这个脚本,它只是 运行 这个 bash 带有 phps shell_exec 和 return 的脚本git 状态输出到 gui。
问题是有时(不足以查明问题所在)脚本失败并响应目录中仍有未暂存的文件,从那里开始工具损坏,直到手动 add/commit完成了。
(当我可以重现一个漂亮干净的错误消息时 post 会出现错误消息)
在添加中使用 --force 确实解决了这个问题,但 --force 也忽略了。git忽略,我想在不使用 -f
的情况下修复它有没有办法强制添加目录,同时仍然遵守 .gitignore?
感谢您的宝贵时间!
编辑:这是错误
[master e02cb4b] test 2 files changed, 6 insertions(+), 3 deletions(-)
Already up-to-date.
On branch master Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add ..." to update what will be committed)
(use "git checkout -- ..." to discard changes in working directory)
modified: ANN/ANN3_1/ann-styles-varB.css no changes added to commit
(use "git add" and/or "git commit -a")
感谢评论。
我们发现该错误是由于硬件限制引起的,并且通过将该工具镜像到具有更快硬盘驱动器/raid 阵列的服务器来解决,因为程序员可以在提交和推送之间更新文件或 devbox 糟糕的硬盘驱动器可能只是被锁定了。
所以解决方案不在代码中,但我确实将 git 添加更改为单个
git add -A .
现在可以完美运行了。