diff options
| author | ertopogo <erwin.t.pombett@gmail.com> | 2025-11-20 00:37:40 +0100 |
|---|---|---|
| committer | ertopogo <erwin.t.pombett@gmail.com> | 2025-11-20 00:37:40 +0100 |
| commit | 0f1ba5af1684cfc64b3ff5374ef95c70df1caac0 (patch) | |
| tree | 5b428d0333eb55c575e058215fa8fed5a5ca3352 /PROJECT.md | |
| parent | 622cb16f89c7a5dddaba5e96a11c0da63abde21a (diff) | |
Amélioration des scripts avec chemin Windows direct vers WSL et ajout du fichier Cursor
Diffstat (limited to 'PROJECT.md')
| -rw-r--r-- | PROJECT.md | 223 |
1 files changed, 112 insertions, 111 deletions
@@ -1,111 +1,112 @@ -# Projet : Synchronisation de fichiers de configuration - -## Objectif - -Ce projet permet de centraliser et synchroniser tous les fichiers de configuration (vim, bash, screen, cursor, documentation, etc.) depuis Windows et WSL vers un dépôt git sur chillka. - -## Structure du projet - -``` -config-files-keyvault/ -├── .git/ # Dépôt git local -├── configs/ -│ ├── windows/ # Fichiers provenant de Windows -│ └── wsl/ # Fichiers provenant de WSL -├── scripts/ -│ ├── sync-to-project.ps1 # Script pour copier fichiers vers le projet -│ └── sync-from-project.ps1 # Script pour restaurer fichiers depuis le projet -├── files-config.txt # Liste des fichiers à synchroniser -├── path-mapping.json # Mapping chemins originaux <-> chemins dans le projet -└── PROJECT.md # Documentation du projet -``` - -## Utilisation - -### 1. Ajouter des fichiers à synchroniser - -Éditer le fichier `files-config.txt` et ajouter les fichiers au format : -``` -windows|%USERPROFILE%\.vimrc -wsl|~/.bashrc -``` - -### 2. Copier les fichiers vers le projet - -Exécuter le script PowerShell : -```powershell -.\scripts\sync-to-project.ps1 -``` - -Ce script va : -- Lire `files-config.txt` -- Copier chaque fichier vers `configs/{system}/` -- Créer/mettre à jour `path-mapping.json` avec les chemins originaux - -### 3. Restaurer les fichiers depuis le projet - -Exécuter le script PowerShell : -```powershell -.\scripts\sync-from-project.ps1 -``` - -Ce script va : -- Lire `path-mapping.json` -- Copier chaque fichier depuis `configs/{system}/` vers son emplacement original -- Créer les répertoires parents si nécessaire - -### 4. Synchronisation Git - -Le dépôt git est configuré avec le remote : -``` -toshiro@chillka:/var/data/git/repositories/config-files-keyvault.git -``` - -Pour synchroniser : -```powershell -git add . -git commit -m "Mise à jour des fichiers de configuration" -git push origin main -``` - -## Format de fichiers-config.txt - -Chaque ligne doit suivre le format : -``` -{système}|{chemin} -``` - -Où : -- `{système}` : `windows` ou `wsl` -- `{chemin}` : Chemin du fichier avec support des variables d'environnement Windows (`%VAR%`) ou expansion WSL (`~`) - -Exemples : -``` -windows|%USERPROFILE%\.vimrc -windows|%APPDATA%\Code\User\settings.json -wsl|~/.bashrc -wsl|~/.bash_aliases -wsl|~/.screenrc -``` - -## Format de path-mapping.json - -Ce fichier est généré automatiquement par le script `sync-to-project.ps1`. Il contient le mapping entre les chemins originaux et les chemins dans le projet : - -```json -{ - "windows": { - "%USERPROFILE%\\.vimrc": "configs/windows/.vimrc" - }, - "wsl": { - "~/.bashrc": "configs/wsl/.bashrc" - } -} -``` - -## Notes - -- Les fichiers sont organisés par système d'origine (windows/wsl) pour faciliter la gestion -- Le mapping des chemins permet de restaurer les fichiers à leur emplacement exact -- Les répertoires parents sont créés automatiquement lors de la restauration - +# Projet : Synchronisation de fichiers de configuration
+
+## Objectif
+
+Ce projet permet de centraliser et synchroniser tous les fichiers de configuration (vim, bash, screen, cursor, documentation, etc.) depuis Windows et WSL vers un dépôt git sur chillka.
+
+## Structure du projet
+
+```
+config-files-keyvault/
+├── .git/ # Dépôt git local
+├── configs/
+│ ├── windows/ # Fichiers provenant de Windows
+│ └── wsl/ # Fichiers provenant de WSL
+├── scripts/
+│ ├── sync-to-project.ps1 # Script pour copier fichiers vers le projet
+│ └── sync-from-project.ps1 # Script pour restaurer fichiers depuis le projet
+├── files-config.txt # Liste des fichiers à synchroniser
+├── path-mapping.json # Mapping chemins originaux <-> chemins dans le projet
+└── PROJECT.md # Documentation du projet
+```
+
+## Utilisation
+
+### 1. Ajouter des fichiers à synchroniser
+
+Éditer le fichier `files-config.txt` et ajouter les fichiers au format :
+```
+windows|%USERPROFILE%\.vimrc
+wsl|~/.bashrc
+```
+
+### 2. Copier les fichiers vers le projet
+
+Exécuter le script PowerShell :
+```powershell
+.\scripts\sync-to-project.ps1
+```
+
+Ce script va :
+- Lire `files-config.txt`
+- Copier chaque fichier vers `configs/{system}/`
+- Créer/mettre à jour `path-mapping.json` avec les chemins originaux
+
+### 3. Restaurer les fichiers depuis le projet
+
+Exécuter le script PowerShell :
+```powershell
+.\scripts\sync-from-project.ps1
+```
+
+Ce script va :
+- Lire `path-mapping.json`
+- Copier chaque fichier depuis `configs/{system}/` vers son emplacement original
+- Créer les répertoires parents si nécessaire
+
+### 4. Synchronisation Git
+
+Le dépôt git est configuré avec le remote :
+```
+toshiro@chillka:/var/data/git/repositories/config-files-keyvault.git
+```
+
+Pour synchroniser :
+```powershell
+git add .
+git commit -m "Mise à jour des fichiers de configuration"
+git push origin main
+```
+
+## Format de fichiers-config.txt
+
+Chaque ligne doit suivre le format :
+```
+{système}|{chemin}
+```
+
+Où :
+- `{système}` : `windows` ou `wsl`
+- `{chemin}` : Chemin du fichier avec support des variables d'environnement Windows (`%VAR%`) ou expansion WSL (`~`)
+
+Exemples :
+```
+windows|%USERPROFILE%\.vimrc
+windows|%APPDATA%\Cursor\User\settings.json
+wsl|~/.bashrc
+wsl|~/.bash_aliases
+wsl|~/.screenrc
+```
+
+## Format de path-mapping.json
+
+Ce fichier est généré automatiquement par le script `sync-to-project.ps1`. Il contient le mapping entre les chemins originaux et les chemins dans le projet :
+
+```json
+{
+ "windows": {
+ "%USERPROFILE%\\.vimrc": "configs/windows/.vimrc"
+ },
+ "wsl": {
+ "~/.bashrc": "configs/wsl/.bashrc"
+ }
+}
+```
+
+## Notes
+
+- Les fichiers sont organisés par système d'origine (windows/wsl) pour faciliter la gestion
+- Le mapping des chemins permet de restaurer les fichiers à leur emplacement exact
+- Les répertoires parents sont créés automatiquement lors de la restauration
+- Les fichiers WSL sont accessibles via le chemin Windows `\\wsl.localhost\Ubuntu\` pour une meilleure performance et fiabilité
+
|
