Git-通过编程防止提交或推送的能力

Git-通过编程防止提交或推送的能力,git,push,commit,git-commit,git-push,Git,Push,Commit,Git Commit,Git Push,我的用例: 我有一个项目,我必须添加一行代码,以便它在我的机器上运行。在提交和推送它之前,我必须再次删除这行代码。 我经常忘记这一点,所以我想知道是否可以编写一个工具,在其中我可以“升起一个标志”,防止我提交或推动提交,直到我再次“移除”标志。 有没有办法创建某种类型的锁文件或设置一种设置,以便git bash拒绝我的提交/推送?您可以通过将具有执行权限的文件放在.git/hook/pre-commit中来创建预提交挂钩 此脚本可以检查行是否存在,如果存在,则返回非零退出代码,从而中止提交: #

我的用例:
我有一个项目,我必须添加一行代码,以便它在我的机器上运行。在提交和推送它之前,我必须再次删除这行代码。
我经常忘记这一点,所以我想知道是否可以编写一个工具,在其中我可以“升起一个标志”,防止我提交或推动提交,直到我再次“移除”标志。

有没有办法创建某种类型的锁文件或设置一种设置,以便git bash拒绝我的提交/推送?

您可以通过将具有执行权限的文件放在
.git/hook/pre-commit
中来创建预提交挂钩

此脚本可以检查行是否存在,如果存在,则返回非零退出代码,从而中止提交:

#/垃圾箱/垃圾箱
如果grep-q'^Line删除$'myfile.txt;然后
echo“您忘记从myfile.txt中删除该行”
出口1
fi
类似地,您可以在pre-push-hook中执行此操作,方法是将文件放置在
.git/hook/pre-push

您还可以让钩子强制删除这一行,然后添加
git add
这个文件,尽管我个人不喜欢钩子自动暂存我不想看到的文件