{"id":810,"date":"2024-05-30T18:52:01","date_gmt":"2024-05-30T16:52:01","guid":{"rendered":"https:\/\/domo.rem81.com\/?p=810"},"modified":"2024-05-31T16:27:04","modified_gmt":"2024-05-31T14:27:04","slug":"ha-duplication-de-la-configuration-ha-sur-github","status":"publish","type":"post","link":"https:\/\/domo.rem81.com\/index.php\/2024\/05\/30\/ha-duplication-de-la-configuration-ha-sur-github\/","title":{"rendered":"HA- Duplication de la configuration HA sur Github"},"content":{"rendered":"\n\n\n\n<p>Cet article explique comment configurer votre Home Assistant pour qu&rsquo;il se sauvegarde automatiquement sur votre compte Github<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Pr\u00e9requis:<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Vous avez install\u00e9 l&rsquo;Addon \u00ab\u00a0Visual Studio\u00a0\u00bb<\/li>\n\n\n\n<li>Vous avez install\u00e9 l&rsquo;Addon \u00ab\u00a0SSH &amp; Web Terminal\u00a0\u00bb<\/li>\n\n\n\n<li>Vous \u00eates administrateur d&rsquo;un compte Github<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Instructions:<\/h2>\n\n\n\n<p>Nota: Il est important de respecter l&rsquo;ordre des instructions suivantes<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Cr\u00e9ation d&rsquo;un d\u00e9p\u00f4t sur Github.<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">Cr\u00e9ation du fichier .gitignore<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code># Exemple de fichier \".gitignore\" dans votre dossier \"config\/\".\n# \n# Une * garantie que tout sera ignor\u00e9.\n*\n# Vous pouvez ajouter des fichiers\/dossiers \u00e0 la liste blanche avec !, ceux-ci ne seront pas ignor\u00e9s.\n!*.yaml\n!.gitignore\n!*.md\n!*.sh\n!*.js*\n!*.csv\n!*.png\n!*.jpg\n!*.dash\n!*.py\n\n\n!*\/\n\n\n# Ignore these files\/folders\nsecrets.yaml\nhome-assistant.log\nhome-assistant.log1\n.storage\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Initialisation du d\u00e9p\u00f4t GIt<\/h2>\n\n\n\n<p>Les instructions sont a saisir dans la fen\u00eatre \u00ab\u00a0terminal\u00a0\u00bb de HA<\/p>\n\n\n\n<p>Initialisation du r\u00e9f\u00e9rentiel&nbsp;:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git init<\/code><\/pre>\n\n\n\n<p>Ajout des fichiers au r\u00e9f\u00e9rentiel en respectant les&nbsp;r\u00e8gles&nbsp;<em>.gitignore<\/em><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git add .<\/code><\/pre>\n\n\n\n<p>Validation des modifications avec le message de validation \u00ab&nbsp;premier git\u00bb ou autre message, c&rsquo;est ce message qui appara\u00eetra dans votre explorateur Github<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"858\" height=\"28\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-37.png\" alt=\"\" class=\"wp-image-812\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-37.png 858w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-37-300x10.png 300w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-37-768x25.png 768w\" sizes=\"auto, (max-width: 858px) 100vw, 858px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>git commit -m \"premier git\"  <\/code><\/pre>\n\n\n\n<p>Ajout de votre r\u00e9f\u00e9rentiel GitHub en tant que r\u00e9f\u00e9rentiel distant o\u00f9 les modifications peuvent \u00eatre pouss\u00e9es et rester uniquement localement.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git remote add origin git@github.com:VOTRE_GIT_HUB\/VOTRE_REPO.git<\/code><\/pre>\n\n\n\n<p>Permet de visualiser l&rsquo;orgine enregistr\u00e9e<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git remote -v<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">S\u00e9curisation des envois vers Gihub<\/h2>\n\n\n\n<h2 class=\"wp-block-heading\">Sauvegarde automatique de HA vers Github<\/h2>\n\n\n\n<p>Cr\u00e9er un fichier \u00ab\u00a0.gitpush\u00a0\u00bb dans votre dossier \u00ab\u00a0config\/\u00a0\u00bb<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Allez dans le dossier \/config ou\n# Remplacez-le par votre dossier de configuration Home Assistant s'il est diff\u00e9rent\n##cd \/config\n\n# Ajouter tous les fichiers au r\u00e9f\u00e9rentiel en respectant les r\u00e8gles .gitignore\n##git add .\n\n# Valider les modifications avec le message de l'horodatage actuel\n##git commit -m \"config files on `date +'%d-%m-%Y %H:%M:%S'`\"\n\n# Pousser les changements vers GitHub\n##git push -u origin master\n\n\n#!\/bin\/bash\ndate &gt;&gt; \/config\/git-last.txt\ncd \/config\ngit config --global user.email \"crochonremy@gmail.com\"\ngit config --global user.name \"remycrochon\"\ngit add .\ngit status\n# Commit changes with message with current date stamp\ngit commit -m \"config files on `date +'%d-%m-%Y %H:%M:%S'`\"\n# Push changes towards GitHub\ngit push -u origin master\nexit<\/code><\/pre>\n\n\n\n<p>Le rendre ex\u00e9cutable<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>chmod +x gitpush.sh<\/code><\/pre>\n\n\n\n<p>L&rsquo;appeler en invite de commande dans le terminal<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>.\/gitpush.sh<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Erreur \u00ab\u00a0fast-forwards\u00a0\u00bb<\/h2>\n\n\n\n<p>Si vous modifiez votre repro github manuellement, vous rencontrerez une erreur du type:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"105\" src=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-38.png\" alt=\"\" class=\"wp-image-816\" srcset=\"https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-38.png 560w, https:\/\/domo.rem81.com\/wp-content\/uploads\/2021\/10\/image-38-300x56.png 300w\" sizes=\"auto, (max-width: 560px) 100vw, 560px\" \/><\/figure>\n\n\n\n<p>Afin d&rsquo;y rem\u00e9dier , vous pouvez saisir la commande suivante:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git push -f origin master<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Reinitialiser \u00ab\u00a0.gitignore\u00a0\u00bb<\/h2>\n\n\n\n<figure class=\"wp-block-embed\"><div class=\"wp-block-embed__wrapper\">\nhttps:\/\/gist.github.com\/Thithip\/cfc058442e4e052aa817\n<\/div><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>git rm -r --cached .<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">References:<\/h2>\n\n\n\n<p><a href=\"https:\/\/peyanski.com\/automatic-home-assistant-backup-to-github\/\">https:\/\/peyanski.com\/automatic-home-assistant-backup-to-github\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Cet article explique comment configurer votre Home Assistant pour qu&rsquo;il se sauvegarde automatiquement sur votre compte Github Pr\u00e9requis: Instructions: Nota: Il est important de respecter l&rsquo;ordre des instructions suivantes Cr\u00e9ation &hellip; <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-810","post","type-post","status-publish","format-standard","hentry","category-homeassistant"],"_links":{"self":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/810","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/comments?post=810"}],"version-history":[{"count":2,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/810\/revisions"}],"predecessor-version":[{"id":3196,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/posts\/810\/revisions\/3196"}],"wp:attachment":[{"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/media?parent=810"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/categories?post=810"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/domo.rem81.com\/index.php\/wp-json\/wp\/v2\/tags?post=810"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}