shell的if多条件

1 、git的版本HEAD解释

bash 复制代码
#如下都是一样的获取最近一次提交的hash值
git log -1 | grep commit
git rev-parse HEAD
git rev-parse HEAD^
git rev-parse HEAD^1
git rev-parse HEAD~
git rev-parse HEAD~1




#如下都是一样的获取最近n次提交的hash值
git rev-parse HEAD~n
git rev-parse HEAD^n
git log -n | grep commit

2、shell的if多条件

bash 复制代码
		# if [[ -f "${target_dir}/${git_dir}/tmp/hash.txt" && -f "${target_dir}/${git_dir}/tmp/mod.txt" ]] && [[ $(cat "${target_dir}/${git_dir}/tmp/hash.txt") == $(git rev-parse HEAD^) ]]; then
		if [[ -f "${target_dir}/${git_dir}/tmp/hash.txt" && -f "${target_dir}/${git_dir}/tmp/mod.txt" ]] && [[ $(cat "${target_dir}/${git_dir}/tmp/hash.txt") == $(git rev-parse HEAD) ]]; then
			echo "Okay"
		else
			echo "Fail"
		fi  

3、git文件权限检查开关

bash 复制代码
git config core.filemode false  #是去掉权限检查的情况  git status ./的时候
git config  --local  core.filemode false
git config  --local  unset core.filemode
相关推荐
竣达技术5 小时前
UPS 供电风险保护方案网络远程控制:免代理 SSH/Telnet UPS 安全关机方案
网络·安全·ssh
JeJe同学10 小时前
Linux远程服务器网络访问优化:使用SSH反向端口转发共享本地HTTP代理
服务器·网络·ssh
墨白曦煜11 小时前
穿透 IDE 的障眼法:Git 四大工作区与核心数据流转解析
ide·git
idealzouhu12 小时前
深入 Git 账户模型:从提交身份到 SSH 多账户隔离的完整实践
git·ssh
是2的10次方啊13 小时前
误推 master 该 revert 还是 reset?撤销与补 MR 流程
git
菠萝加点糖1 天前
Git 删除远程文件、本地保留并取消跟踪
git
理智.6291 天前
Git 工具使用之项目版本回退与修改备份:stash、reset、reflog 常用指令详解
git·gitee·github
就叫飞六吧1 天前
SSH 本地端口转发:用 localhost 访问远程服务
运维·ssh
妙码生花1 天前
GIT 提交规范
git
云雀衔光1 天前
多个 MCP Server 怎么编排:数据库 / Redis / Git / 飞书一把梭
java·数据库·人工智能·redis·git·语言模型·飞书