---json { "aliases": [ { "path": ":howto:getting_started:5_git" } ], "name": "Git Site", "page_id": "4335hckjomaayfepj2m1v", "template": "holy", "title": "How to store your site in Git?" } --- ====== Bonus: How to store your site in Git? ====== ===== About ===== This page will show you how to store your site as [[:docs:admin:website|combo site]] in a remote Git repository. ===== Steps ===== ==== Create a remote Git Repository ==== We will be using [[https://github/com|GitHub]] as example, but you can use any Git Repository Provider such as [[https://gogs.io/|Gogs]], [[https://gitlab.com|GitLab]] or [[https://gitea.com/|Gitea]]. For GitHub, follow this [[https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository|article]] to create your new repository. ==== Create a local Git Repository ==== * Go to the root of your DokuWiki installation. * If you choose the docker installation, it's the directory that was used with the [[howto:getting_started:2_docker|docker command]] * Otherwise it's the directory where you found the `doku.php` file cd /tmp/site-combo-starter * Initialize a Git repository # Init (ie create ) a local repo git init * Rename the master branch to main git branch -M main ==== The secret sauce, add .gitignore ==== Now, the secret sauce Because we don't want to back up all files into Git, we can use the [[https://git-scm.com/docs/gitignore|gitignore]] mechanism to ignore all code file and not our pages and assets. If you didn't choose the docker installation method, add the [[https://github.com/combostrap/site-starter/blob/main/.gitignore|.gitignore file]] manually or with `wget` and `bash` wget https://raw.githubusercontent.com/combostrap/site-starter/refs/heads/main/.gitignore > .gitgnore ==== Add the Git remote ==== * Add the URL of your repository as origin git remote add origin https://github.com/ComboStrap/site-starter.git ==== Check the untracked files ==== git status On branch main No commits yet Untracked files: (use "git add ..." to include in what will be committed) .gitattributes .gitignore README.md conf/ data/ docs/ lib/ robots.txt nothing added to commit but untracked files present (use "git add" to track) ==== Add your site files ==== Add them all git add . ==== Create your first commit ==== * Create a commit git commit -m "First commit" ==== Push them to your remote repository ==== * Push git push -u origin main # enter your credentials # or use SSH Keys (https://docs.github.com/en/authentication/connecting-to-github-with-ssh) Enumerating objects: 45, done. Counting objects: 100% (45/45), done. Delta compression using up to 16 threads Compressing objects: 100% (36/36), done. Writing objects: 100% (45/45), 50.71 KiB | 10.14 MiB/s, done. Total 45 (delta 1), reused 0 (delta 0), pack-reused 0 remote: Resolving deltas: 100% (1/1), done. To github.com:ComboStrap/site-starter.git * [new branch] main -> main branch 'main' set up to track 'origin/main'. ===== Next ===== If you write locally, you can now develop, change your wiki and push your change to your Git Repository. Then you can: * Check the [[docs:component|UI Components]] * Learn about [[docs:router:router|Routing and redirections]] * Have a look at the [[docs:seo:seo|SEO page]] For more tips and tops, you can also [[:newsletter|subscribe to the newsletter]].