Fond ennuyeux - Résumé: Je sais que nous n'utilisons pas correctement GIT! .
Cela a commencé comme un petit projet de loisir et a pris de l'ampleur - ma société utilise Git pour suivre / gérer les modifications apportées à une plate-forme logicielle sur mesure basée sur le Web et servir de référentiel central. Environ 300 appareils mobiles sont ensuite configurés pour accéder à un référentiel cloné local au démarrage à partir d’un serveur intranet auto-hébergé afin de pouvoir accéder à la dernière version du logiciel même s’ils ne sont pas connectés au réseau (nous utilisons des branches sont uniquement exposés à du code mature / testé).
Nous avons maintenant franchi une étape: nous avons une base de données de "pièces" mise à jour quotidiennement. J'ai créé une version distincte de cette base de données à l'aide de scripts cron pour créer une version autonome pouvant être ouverte sur une "machine non connectée" locale.
Mon problème
J'ai un ensemble de scripts PHP qui prennent des données de table de base de données et les exportent dans le format de fichier plat requis par l'application, puis copient toutes les images supplémentaires depuis le dernier cycle aux emplacements appropriés. Tous les fichiers sont stockés dans/var/www/clonedrepository
Je veux ensuite exécuter les commandes suivantes sur le répertoire:
git add .
git commit -m "Automatic update: todaysdate"
git push
Le référentiel est cloné à partir /home/git/repository
duquel est servi à l’aide des liens symboliques git deamon et apache permettant l’accès http (pour le clonage de périphérique passif) et SSH (pour l’édition adulte / la mise à jour).
Le problème est que je suis un programmeur Web et que je suis hors de propos. J'ai mis en place les dépôts git et je suis à l'aise avec la ligne de commande, mais je ne connais pas le meilleur endroit pour commencer.
Note latérale: Il n'y aura jamais de conflits car aucun utilisateur ne modifiera les fichiers de données et le système n'éditera rien d'autre que les fichiers de données.
En résumé , j'ai un référentiel central sur ma machine Ubuntu Linux ( /home/git/repository
) que je voudrais mettre à jour quotidiennement à partir d'un référentiel cloné ( /var/www/clonedrepository
) sur la même boîte.