如果我需要一些额外的代码来在本地服务器上运行某些内容,但是需要记住将其删除,然后再推送到git或合并到受保护的分支中。
是否有一段代码(或vscode扩展名)可以通知git或在推送时通知我(如果我忘记删除该代码)。像//TODO:
还是git可以识别的东西?
答案 0 :(得分:1)
在git方面:您可以在本地存储库中添加一个预推钩子,以扫描代码中的禁止单词,并在发现单词时取消推送。
例如,这里有一些寻找dontpush
的代码(它使用git grep -i
,"DoNtPuSh"
的任何大小写都可以工作),并且如果在本地提交中找到则不会推送:
# file '.git/hooks/pre-push' :
#!/bin/bash
remote="$1"
url="$2"
z40=0000000000000000000000000000000000000000
while read local_ref local_sha remote_ref remote_sha
do
if [ "$local_sha" = $z40 ]
then
# Delete: nothing to do on deleted branches
else
# Check if "dontpush" appears in the local commit :
dontpush=`git grep -n -i dontpush $local_sha -- $files`
if [ -n "$dontpush" ]
then
# print 'git grep' output on STDERR,
# remove the leading "sha:" on each line
(echo $dontpush | sed -e 's/^[^:]*://') | cat >&2
echo >&2 "*** Found 'dontpush' tag in $local_ref, not pushing"
exit 1
fi
fi
done
exit 0
答案 1 :(得分:0)