欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > IT业 > mac电脑.sh文件,用来清除git当前分支

mac电脑.sh文件,用来清除git当前分支

2025/6/13 7:30:27 来源:https://blog.csdn.net/RocketJ/article/details/148580519  浏览:    关键词:mac电脑.sh文件,用来清除git当前分支
#!/bin/bashecho "正在检查Git仓库..."
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; thenecho "错误:当前目录不是Git仓库!"exit 1
fiecho "警告:这将丢弃所有未提交的更改和本地提交!"
read -p "Are you sure to continue? (Y/N): " confirmif [[ "$confirm" != "Y" && "$confirm" != "y" ]]; thenecho "Operation cancelled."exit 0
fiecho "正在强制同步当前分支到远程状态..."
git reset --hard HEAD || {echo "错误:重置分支失败!"exit 1
}git clean -fd || {#!/bin/bashecho "正在检查Git仓库..."
if ! git rev-parse --is-inside-work-tree >/dev/null 2>&1; thenecho "错误:当前目录不是Git仓库!"exit 1
fi# 获取当前分支名
current_branch=$(git symbolic-ref --short HEAD 2>/dev/null)
if [ -z "$current_branch" ]; thenecho "错误:无法确定当前分支!"exit 1
fiecho "警告:这将丢弃所有未提交的更改和本地提交!"
echo "当前分支: $current_branch"
read -p "Are you sure to continue? (Y/N): " confirmif [[ "$confirm" != "Y" && "$confirm" != "y" ]]; thenecho "操作已取消。"exit 0
fi# 首先获取远程最新状态
echo "正在获取远程最新状态..."
if ! git fetch origin "$current_branch"; thenecho "错误:获取远程分支失败!"exit 1
fi# 重置到远程分支状态
echo "正在强制重置分支到远程状态..."
if ! git reset --hard "origin/$current_branch"; thenecho "错误:重置分支失败!"exit 1
fi# 清理未跟踪文件
echo "正在清理未跟踪文件..."
git clean -fd || {echo "警告:清理未跟踪文件时遇到问题,但继续操作"
}# 再次拉取确保同步
if ! git pull; thenecho "警告:git pull 执行失败,但同步操作已完成"
fiecho "同步完成!当前状态:"
git status
read -p "按回车键继续..."echo "错误:清除未跟踪文件失败!"exit 1
}if ! git pull; thenecho "警告:git pull 执行失败,但同步操作已完成"
figit status
echo "提示:nothing to commit, working tree clean后,完成!"
read -p "按回车键继续..."

使用说明:
1、将脚本保存为 reset_git.sh
2、打开终端,赋予执行权限:chmod +x reset_git.sh
3、在 Git 仓库文件加打开终端,在中运行:./reset_git.sh

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词