En vrac !
1. Git
git diff
# Les diffs déjà ajoutés
git diff --staged
git show
# Voir les détails du dernier commit
git show
# Voir les détails d'un commit donné
git show <commit_sha1>
git log
# Les commits d'une branche donnée
git log staging
# Restreindre par le nombre
git log -n 5
git log --max-count=5
# Restreindre par la date
git log --since="1 month"
# Restreindre par l'auteur
git log --author="author email"
# Les voir tous
git --no-pager log
# Ne voir que le SHA1
git log --format="format:%H"
Squash des commits sous IDEA
Squasher des commits avec Git est tellement pénible …
Heureusement ce billet explique le squash des commits sous IDEA !
2. Bash
Modifier les arguments de la ligne de commande
# Tout remplacer
set -- new_arg1 new_arg2 new_arg3 ...
# Ajouter deux arguments en plus au début
set -- added_arg1 added_arg2 "$*"
Obtenir le temps passé par une commande
/usr/bin/time -v make test
ou alors:
\time -v make test
En effet time
est aussi une built-in de Bash, qui n’accepte pas l’option -v
comprise par /usr/bin/time
:
command -V time
time est un mot-clé du shell
On peut aussi utiliser time
avec le flag -p
qui est moins verbeux.
Débugger un script
Modifier le Shebang du script et remplacer:
#!/usr/bin/env sh
par:
#!/usr/bin/env -S sh -x
Lancer 10 fois les tests
En s’arrêtant dès qu’une des exécutions est en erreur.
#!/bin/bash
set -o errexit
for i in {1..10}; do
mvn test
done
3. ssh
Pour se connecter en forçant l’utilisation du mot de passe:
ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no raspberrypi2.local
4. squid
Pour pouvoir utiliser squid
sur toutes les machines du réseau local:
http_access allow localnet
5. Gradle
4.1. Initialiser un projet Java
#!/bin/bash
project=gradle-sample-app
rm -fr $project
mkdir $project
cd $project
gradle init \
--dsl groovy \
--package org.grumpyf0x48 \
--project-name $project \
--test-framework junit-jupiter \
--type java-application
# mv app/* .
# supprimer include('app') dans settings.gradle