<commit_before>#!/bin/bash
#
# Deploy the content of _site to 'origin/<pages_branch>'
#
# v2.5
# https://github.com/cotes2020/jekyll-theme-chirpy
# © 2020 <NAME>
# Published under MIT License


set -eu

PAGES_BRANCH="gh-pages"

_no_branch=false

if [[ -z $(git branch -av | grep "$PAGES_BRANCH") ]]; then
  _no_branch=true
  git checkout -b "$PAGES_BRANCH"
else
  git checkout "$PAGES_BRANCH"
fi

mv _site ../
mv .git ../

rm -rf ./*
rm -rf .[^.] .??*

mv ../_site/* .
mv ../.git .

git config --global user.name "GitHub Actions"
git config --global user.email "41898282+<EMAIL>-<EMAIL>[<EMAIL>"

git update-ref -d HEAD
git add -A
git commit -m "[Automation] Site update No.${GITHUB_RUN_NUMBER}"

if [[ $_no_branch = true ]]; then
  git push -u origin $PAGES_BRANCH
else
  git push -f
fi
<commit_msg>Improve the deploy tool<commit_after>#!/bin/bash
#
# Deploy the content of _site to 'origin/<pages_branch>'
#
# v2.5
# https://github.com/cotes2020/jekyll-theme-chirpy
# © 2020 <NAME>
# Published under MIT License


set -eu

PAGES_BRANCH="gh-pages"

_no_branch=false
_backup_dir="$(mktemp -d)"

init() {
  if [[ -z $(git branch -av | grep "$PAGES_BRANCH") ]]; then
    _no_branch=true
    git checkout -b "$PAGES_BRANCH"
  else
    git checkout "$PAGES_BRANCH"
  fi
}

backup() {
  mv _site "$_backup_dir"
  mv .git "$_backup_dir"

  # When adding custom domain from Github website, 
  # the CANME only exist on `gh-pages` branch
  if [[ -f CNAME ]]; then 
    mv CNAME "$_backup_dir"
  fi  
}

flush() {
  rm -rf ./*
  rm -rf .[^.] .??*

  shopt -s dotglob nullglob
  mv "$_backup_dir"/* .
}

deoply() {
  git config --global user.name "GitHub Actions"
  git config --global user.email "41898282+github-actions[bot]<EMAIL>"

  git update-ref -d HEAD
  git add -A
  git commit -m "[Automation] Site update No.${GITHUB_RUN_NUMBER}"

  if [[ $_no_branch = true ]]; then
    git push -u origin "$PAGES_BRANCH"
  else
    git push -f
  fi
}

main() {
  init
  backup
  flush
  deoply
}

main

{'fraction_non_alphanumeric': 0.15140845070422534, 'fraction_numerical': 0.018108651911468814, 'mean_word_length': 3.1095041322314048, 'pattern_counts': {'":': 0, '<': 11, '<?xml version=': 0, '>': 11, 'https://': 2, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4577022', 'n_tokens_mistral': 853, 'n_tokens_neox': 780, 'n_words': 221}