diff --git a/app/controllers/admin/communication/website/categories_controller.rb b/app/controllers/admin/communication/website/categories_controller.rb
index c3e9a0608e1970216cd4292ff9891b91b6d45f21..0db5e29c4ff1a3c543660cfa3425fc76a959e7de 100644
--- a/app/controllers/admin/communication/website/categories_controller.rb
+++ b/app/controllers/admin/communication/website/categories_controller.rb
@@ -19,8 +19,12 @@ class Admin::Communication::Website::CategoriesController < Admin::Communication
         parent_id: parent_id,
         position: index + 1
       )
+      category.sync_with_git unless parent_id
+    end
+    if parent_id
+      parent = @website.categories.find(parent_id)
+      parent.sync_with_git
     end
-    first_category.sync_with_git if first_category
   end
 
   def children
diff --git a/db/schema.rb b/db/schema.rb
index 583c931e5f207802c0a001e88dd14625864d6f0e..371c61f2409a0e63ebc7f9dbb481b7c30bae6f66 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -319,10 +319,10 @@ ActiveRecord::Schema.define(version: 2022_04_19_144340) do
     t.uuid "related_category_id"
     t.string "featured_image_alt"
     t.text "text"
+    t.text "description_short"
     t.string "breadcrumb_title"
     t.text "header_text"
     t.integer "kind"
-    t.text "description_short"
     t.string "bodyclass"
     t.index ["communication_website_id"], name: "index_communication_website_pages_on_communication_website_id"
     t.index ["parent_id"], name: "index_communication_website_pages_on_parent_id"