git add有时在bash脚本中不起作用

时间:2015-01-28 18:30:01

标签: git bash

别名另一个git问题。 在我工作的地方,我们有一个相当不寻常的工作流程,所以我已经建立了一个gui来管理提交

#!/bin/bash
cd /my/git/repo/
git add -u
git add -A
git commit -m $1
git pull
git push
git status

然后我通过点击我的webUI上的提交按钮来运行这个脚本,该按钮只是用phps shell_exec运行这个bash脚本并将git status输出返回给gui。

问题在于,有时(通常不足以查明问题)脚本失败,响应是目录中仍有未分段文件,从那里工具被破坏,直到完成手动添加/提交。 / p>

(当我可以重现一个干净的时候会发布错误信息)

在添加中使用--force确实解决了这个问题,但是--force也忽略了.gitignore,我想在不使用-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")

1 个答案:

答案 0 :(得分:0)

感谢您的评论。

我们发现错误是由硬件限制引起的,并且通过将工具镜像到具有更快的硬盘/ raid阵列的服务器来解决,因为程序员可以在提交和推送之间更新文件或devboxs糟糕的硬盘驱动器可能只是被锁定。

所以解决方案不在代码中,但我确实将git add更改为单个

git add -A .

现在完美无瑕地工作。