sh 将结果移动到基于git hash的文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh 将结果移动到基于git hash的文件夹相关的知识,希望对你有一定的参考价值。

#!/bin/bash
RESULT_TMP_DIR=results_dump
git_top_level=$(git rev-parse --show-toplevel)
results_dir_l=(${git_top_level}/results ${git_top_level}/../results ${git_top_level}/analysis/results "0")
for results_dir in ${results_dir_l[@]}; do
	if [[ -e $results_dir ]]; then
		break
	fi
done

if [ "$results_dir" == "0" ]; then
    echo "Could not find results dir. Will not move files."
	exit -1
fi
echo $results_dir

branch=`git rev-parse --abbrev-ref HEAD`
commit=`git rev-parse HEAD`
commit=${commit:0:8}
date=`date +%Y-%m-%d`
mkdir -p ${results_dir}/${branch}
commit_dir=${results_dir}/${branch}/${date}_${commit}/
if [[ ! -e $commit_dir ]]; then
    mkdir $commit_dir
else
    echo "$commit_dir already exists in $branch. Will not move files."
	exit -1
fi
echo "Moving files ..."
set -x
mv $RESULT_TMP_DIR/* $commit_dir
set +x

以上是关于sh 将结果移动到基于git hash的文件夹的主要内容,如果未能解决你的问题,请参考以下文章

sh grep for git log中的一个字符串,使用awk从结果中打印哈希,使用hash来git显示diff

将git头引用和文件移动到上一个提交

sh Git:将分支指针移动到不同的提交

sh 将git存储库及其所有分支,标记移动到新的远程存储库,保留提交历史记录

sh 将子目录从一个git存储库移动到另一个git存储库的子目录,而不会丢失提交历史记录。

sh Untrack文件已经基于.gitignore添加到git存储库中