Je viens de recevoir un nouvel emploi et un de mes est de gérer RESPONSABILITÉS deux boîtes FreeBSD en cours d'exécution PF comme une solution de filtrage de paquets. Les firewalls étaient gérés par une seule personne, mais maintenant nous sommes 3 gars qui fixent les mêmes fichiers de configuration en même temps. Je veux utiliser git pour pouvoir travailler sur des demandes de changement dans une copie locale et pousser les changements sur le serveur quand j'ai fini. Cela me donnerait: le contrôle de version, les restaurations rapides et la gestion des conflits. J'ai mis le feu à une machine virtuelle pour les tests et voici ce que j'ai fait jusqu'à maintenant.Problèmes d'utilisation git pour le contrôle de version pf.conf
course git init
intérieur /etc
et /usr/local/etc
fait un git clone
intérieur /usr/home/myusername/config_sync/
pour les prises en pension locales:
git clone -l /etc [email protected]<br>
git clone -l /usr/local/etc [email protected]<br>
Thats ce que je pensais que je pouvais faire:
changement pf.conf; run git add pf.conf;
run run git commit -m 'comment'
sudo git push
Mais voici ce qui se passe. Bien que je n'ai rien changé dans le fichier pf.conf dans/etc, git reconnaît le commit distant mais considère que la copie locale est une version plus récente qui annule tout ce que j'ai fait. Par exemple, si j'ajoute la ligne '#test' dans ma copie de travail et que je la place dans/etc, voici ce qu'un maître sudo git diff me montrerait dans/etc.
diff --git a/pf.conf b/pf.conf<br>
index 31c4c68..76d693b 100644<br>
--- a/pf.conf<br>
+++ b/pf.conf<br>
@@ -1,5 +1,5 @@<br>
#MACROS<br>
-#test<br>
#Hello from origin#<br>
##Firewall Interfaces<br>
Merci John, C'est ce que je prévois de faire. Gardez toujours une branche appelée production comme répertoire de travail de/etc, poussez les changements à master, puis fusionnez le en production. – bananabr