| @ -0,0 +1,22 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| git_current_branch() { | |||||
| git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/' | |||||
| } | |||||
| CUR_BRANCH=`git_current_branch` | |||||
| CIBLE=$1 | |||||
| if [ "$CIBLE" == "" ] | |||||
| then | |||||
| CIBLE=$CUR_BRANCH | |||||
| fi | |||||
| $DIRNAME/01_quick_commit.sh | |||||
| if [ ! "$CIBLE" = "$CUR_BRANCH" ]; | |||||
| then | |||||
| git checkout $CIBLE | |||||
| git pull | |||||
| fi | |||||
| @ -0,0 +1,30 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| git_current_branch() { | |||||
| git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/' | |||||
| } | |||||
| CUR_BRANCH=`git_current_branch` | |||||
| TEST=`git status | grep propre | wc -l` | |||||
| if [ $TEST -eq 0 ] | |||||
| then | |||||
| echo "La branche actuelle ($CUR_BRANCH) n'est pas propre" | |||||
| echo # (optional) move to a new line | |||||
| read -p "Voulez-vous voir les modifications courantes ? " -n 1 -r | |||||
| echo # (optional) move to a new line | |||||
| if [[ $REPLY =~ ^[YyOo]$ ]] | |||||
| then | |||||
| git status | |||||
| fi | |||||
| echo # (optional) move to a new line | |||||
| read -p "Voulez-vous ajouter les modifications courantes ? " -n 1 -r | |||||
| echo # (optional) move to a new line | |||||
| if [[ $REPLY =~ ^[YyOo]$ ]] | |||||
| then | |||||
| git add . | |||||
| fi | |||||
| fi | |||||
| @ -0,0 +1,12 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| TIMESTAMP=`date "+%Y%m%d%H%M"` | |||||
| $DIRNAME/00_status.sh | |||||
| TEST=`git status | grep propre | wc -l` | |||||
| if [ $TEST -eq 0 ] | |||||
| then | |||||
| git commit -m "$TIMESTAMP" | |||||
| fi | |||||
| @ -0,0 +1,27 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| if [ "$1" == "" ] | |||||
| then | |||||
| echo "Il faut préciser un nom de branche !" | |||||
| exit 1 | |||||
| fi | |||||
| $DIRNAME/01_quick_commit.sh | |||||
| courante=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' | sed 's:(::g' | sed 's:)::g'` | |||||
| if [ $courante != develop ] | |||||
| then | |||||
| echo "La branche actuelle n'est pas develop" | |||||
| read -p "Voulez-vous basculer sur develop ? " -n 1 -r | |||||
| echo # (optional) move to a new line | |||||
| if [[ $REPLY =~ ^[YyOo]$ ]] | |||||
| then | |||||
| $DIRNAME/00_checkout_branch.sh develop | |||||
| fi | |||||
| fi | |||||
| git branch $1 | |||||
| git checkout $1 | |||||
| git push --set-upstream all $1 | |||||
| @ -0,0 +1,28 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| git_current_branch() { | |||||
| git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/' | |||||
| } | |||||
| CUR_BRANCH=`git_current_branch` | |||||
| CIBLE=$1 | |||||
| if [ "$CIBLE" == "" ] | |||||
| then | |||||
| CIBLE=$CUR_BRANCH | |||||
| fi | |||||
| $DIRNAME/01_quick_commit.sh | |||||
| if [ ! "$CIBLE" = "$CUR_BRANCH" ]; | |||||
| then | |||||
| $DIRNAME/00_checkout_branch.sh $CIBLE | |||||
| fi | |||||
| git push all | |||||
| if [ ! "$CIBLE" = "$CUR_BRANCH" ]; | |||||
| then | |||||
| $DIRNAME/00_checkout_branch.sh $CUR_BRANCH | |||||
| fi | |||||
| @ -0,0 +1,39 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| echo "Il vaudrait mieux passer par https://git.topisto.net/topisto/suivi_projets" | |||||
| read -p "Are you sure ?" -n 1 -r | |||||
| echo # (optional) move to a new line | |||||
| if [[ $REPLY =~ ^[Yy]$ ]] | |||||
| then | |||||
| # do dangerous stuff | |||||
| $DIRNAME/01_quick_commit.sh | |||||
| courante=`git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/' | sed 's:(::g' | sed 's:)::g'` | |||||
| cible=develop | |||||
| if [ "$courante" = "develop" ] | |||||
| then | |||||
| cible=hotfix | |||||
| fi | |||||
| if [ "$courante" = "hotfix" ] | |||||
| then | |||||
| cible=production | |||||
| fi | |||||
| echo merge $courante into $cible | |||||
| git push | |||||
| git checkout $cible | |||||
| git merge $courante | |||||
| git push | |||||
| git checkout $courante | |||||
| fi | |||||
| @ -0,0 +1,48 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| git_current_branch() { | |||||
| git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/' | |||||
| } | |||||
| CUR_BRANCH=`git_current_branch` | |||||
| CIBLE=$1 | |||||
| if [ "$CIBLE" == "" ] | |||||
| then | |||||
| CIBLE=$CUR_BRANCH | |||||
| fi | |||||
| internal_delete_branch() { | |||||
| git branch -D $1 | |||||
| git push all --delete $1 | |||||
| } | |||||
| delete_branch() { | |||||
| read -p "Delete $1 (y/n) ? " choice | |||||
| case "$choice" in | |||||
| y|Y|o|O ) internal_delete_branch $1;; | |||||
| n|N ) echo "no";; | |||||
| * ) echo "invalid choice ($choice)";; | |||||
| esac | |||||
| } | |||||
| $DIRNAME/03_push_branch.sh | |||||
| if [ ! "$CUR_BRANCH" = "develop" ] | |||||
| then | |||||
| echo "La branche actuelle n'est pas develop" | |||||
| read -p "Voulez-vous basculer sur develop ? " -n 1 -r | |||||
| echo # (optional) move to a new line | |||||
| if [[ $REPLY =~ ^[YyOo]$ ]] | |||||
| then | |||||
| $DIRNAME/00_checkout_branch.sh develop | |||||
| fi | |||||
| fi | |||||
| case $CIBLE in | |||||
| ($CUR_BRANCH) echo "Impossible : $CIBLE is current branch !";; | |||||
| ("evo"*) delete_branch $CIBLE;; | |||||
| ("ano"*) delete_branch $CIBLE;; | |||||
| (*) echo "$CIBLE is not a feature branch";; | |||||
| esac | |||||
| @ -0,0 +1,10 @@ | |||||
| #!/bin/env bash | |||||
| DIRNAME=`dirname $0` | |||||
| for branche in $(git branch | cut -c 3-) | |||||
| do | |||||
| echo "branch $branche detected" | |||||
| $DIRNAME/05_delete_feature_branch.sh $branche | |||||
| done | |||||
| @ -0,0 +1,47 @@ | |||||
| #!/bin/env bash | |||||
| # | |||||
| # Étape 1 : ajouter les lignes suivantes dans .git/config | |||||
| # | |||||
| # [filter "secrets"] | |||||
| # clean = ../scripts/filter-secrets.sh clean | |||||
| # smudge = ../scripts/filter-secrets.sh smudge | |||||
| # | |||||
| # Étape 2 : ajouter les lignes suivantes dans le .git/info/attributes | |||||
| # NB : il s'agit de la liste des fichiers sur lequel git doit appliquer le filtre | |||||
| # | |||||
| # config.yaml filter=secrets | |||||
| # .env filter=secrets | |||||
| # | |||||
| # | |||||
| if [ "$1" == "clean" ]; then | |||||
| # Clean (replace sensitive data with placeholders) | |||||
| sed -e 's/XXXXXXXXX/{API_KEY_PLACEHOLDER}/g' \ | |||||
| -e 's/YYYYYYYYY/{SENDING_API_KEY_PLACEHOLDER}/g' \ | |||||
| -e 's/ZZZZZZZZZ/{SMTP_PASSWORD_PLACEHOLDER}/g' \ | |||||
| -e 's/AAAAAAAAA/{POSTGRES_PASSWORD_PLACEHOLDER}/g' \ | |||||
| -e 's/BBBBBBBBB/{TWS_USERID_PLACEHOLDER}/g' \ | |||||
| -e 's/CCCCCCCCCC/{TWS_PASSWORD_PLACEHOLDER}/g' | |||||
| # Si une erreur se produit avec sed, renvoyer un code d'erreur | |||||
| if [ $? -ne 0 ]; then | |||||
| echo "Erreur lors de l'exécution du clean" | |||||
| exit 1 | |||||
| fi | |||||
| elif [ "$1" == "smudge" ]; then | |||||
| # Smudge (replace placeholders with sensitive data) | |||||
| sed -e 's/{API_KEY_PLACEHOLDER}/XXXXXXXXX/g' \ | |||||
| -e 's/{SENDING_API_KEY_PLACEHOLDER}/YYYYYYYYY/g' \ | |||||
| -e 's/{SMTP_PASSWORD_PLACEHOLDER}/ZZZZZZZZZ/g' \ | |||||
| -e 's/{POSTGRES_PASSWORD_PLACEHOLDER}/AAAAAAAAA/g' \ | |||||
| -e 's/{TWS_USERID_PLACEHOLDER}/BBBBBBBBB/g' \ | |||||
| -e 's/{TWS_PASSWORD_PLACEHOLDER}/CCCCCCCCCC/g' | |||||
| if [ $? -ne 0 ]; then | |||||
| echo "Erreur lors de l'exécution du smudge" | |||||
| exit 1 | |||||
| fi | |||||
| fi | |||||
| exit 0 | |||||