参考:
git正确的删除远程仓库的文件并用.gitignore忽略提交此文件
一、认证信息在全局设置保存,不要重复输入密码
git config --global credential.helper store
git全局配置
.gitignore_global
.gitignore_global 文件中添加以下内容忽略指定文件
application*.yml
二、取消托管文件
#$0 为执行的文件名,$1 第一个参数
echo "param 1 is $1"
project_path="$1"
echo "project_path is $project_path"
cd $project_path;
pwd
all_branchs=`git branch -a`;
#echo $all_branches;
for branch in $all_branchs;
do
branch_simple_name=`echo $branch | grep '/' | cut -d '/' -f3`
if [[ "" != "$branch_simple_name"
&& "HEAD" != "$branch_simple_name"
]]; then
echo "branch_simple_name is $branch_simple_name, $branch --->> " $branch_simple_name;
# 切换到指定分支
git checkout "$branch_simple_name"
# 查看当前分支
git branch
if [ -d "$project_path/src/main/resources/" ]; then
echo "delete src/main/resources/application*.yml starting......"
cd "$project_path"/src/main/resources/
pwd
git add -f application*.yml
# 删除远程仓库或缓存区的文件,工作区文件保留
git rm -r --cached application*.yml
git commit -m "delete application*.yml, contain password"
echo "delete src/main/resources/application*.yml stop"
fi
if [ -d "$project_path/src/test/resources/" ]; then
echo "======================================================="
echo ""
echo "delete src/test/resources/application*.yml starting......"
cd "$project_path"/src/test/resources/
pwd
git add -f application*.yml
# 删除远程仓库或缓存区的文件,工作区文件保留
git rm -r --cached application*.yml
git commit -m "delete application*.yml, contain password"
echo "delete src/test/resources/application*.yml stop"
git push origin "$branch_simple_name"
echo ""
echo ""
fi
fi;
done;