first commit

This commit is contained in:
julien committed 2026-10-08 15:40:10 +02:00
commit 273e756521
2 files changed
+72

No files matched your search

+56
View File
@@ -0,0 +1,56 @@
# Tools
Quelques outils personnels en Ruby.
## Installation
Clonez le dépôt, par exemple dans `~/src/tools` :
```sh
git clone <url-du-depot> ~/src/tools
```
Ajoutez ensuite le dossier `bin` au `PATH` dans `~/.bash_profile` :
```sh
export PATH="$HOME/src/tools/bin:$PATH"
```
Puis ouvrez une nouvelle session ou rechargez le fichier :
```sh
source ~/.bash_profile
```
## tools-git-update
`tools-git-update` parcourt uniquement les sous-dossiers directs du dossier courant et exécute :
```sh
git pull --ff-only
```
dans chaque sous-dossier contenant un dépôt Git.
Le script ne descend pas récursivement dans les sous-dossiers.
Git effectue la mise à jour uniquement si une avance rapide (*fast-forward*) est possible. En cas de divergence ou d'échec de la commande, le dépôt n'est pas fusionné automatiquement et le script affiche un avertissement.
### Utilisation
Placez-vous dans le dossier contenant les dépôts à mettre à jour :
```sh
cd ~/src
tools-git-update
```
Exemple d'organisation :
```text
~/src/
├── easy-slack/
├── ecarte/
├── geckobreizh/
└── tools/
```
+16
View File
@@ -0,0 +1,16 @@
#!/usr/bin/env ruby
Dir.children(Dir.pwd).sort.each do |entry|
path = File.join(Dir.pwd, entry)
next unless File.directory?(path)
next unless File.exist?(File.join(path, ".git"))
puts "\n==> #{entry}"
Dir.chdir(path) do
unless system("git", "pull", "--ff-only")
warn "Attention : #{entry} n'a pas été mis à jour."
end
end
end