# Install Hugo in host

**URL:** <https://discourse.gohugo.io/t/install-hugo-in-host/44110>\
**Category:** support\
**Created:** [April 27, 2023, 10:32pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110 "2023-04-27T22:32:57Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Nedjma\_Media](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/nedjma_media/32/18929_2.png) [@Nedjma\_Media](https://discourse.gohugo.io/u/Nedjma_Media)\
**Post date:** [April 27, 2023, 10:32pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/1 "2023-04-27T22:32:57Z")

</div>

What are the prerequisites to install Hugo on my own host (not GitHub or Netlify…) ?

---

<div class="post-metadata">

**Author:** ![Arif](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/arif/32/20931_2.png) [@Arif](https://discourse.gohugo.io/u/Arif)\
**Post date:** [April 27, 2023, 11:05pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/2 "2023-04-27T23:05:15Z")

</div>

Build site locally with the `hugo` command then upload the contents of the `public` folder to the equivalent folder in your server.

---

<div class="post-metadata">

**Author:** ![baconlorange](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/baconlorange/32/18645_2.png) [@baconlorange](https://discourse.gohugo.io/u/baconlorange)\
**Post date:** [April 28, 2023, 1:48pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/3 "2023-04-28T13:48:23Z")

</div>

If you do not want to update always the complete page, either rsync is your friend or other tools which can compare filesize/date and update just changed files.

---

<div class="post-metadata">

**Author:** ![Nedjma\_Media](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/nedjma_media/32/18929_2.png) [@Nedjma\_Media](https://discourse.gohugo.io/u/Nedjma_Media)\
**Post date:** [April 28, 2023, 4:22pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/4 "2023-04-28T16:22:12Z")

</div>

jute upload hugo website or i have to install hugo on my server ?

---

<div class="post-metadata">

**Author:** ![Arif](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/arif/32/20931_2.png) [@Arif](https://discourse.gohugo.io/u/Arif)\
**Post date:** [April 28, 2023, 4:57pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/5 "2023-04-28T16:57:24Z")

</div>

You upload the public folder to the root of your server or deploy with rsync as suggested

> **[Deployment with Rsync](https://gohugo.io/hosting-and-deployment/deployment-with-rsync/)**
>
> If you have access to your web host with SSH, you can use a simple rsync one-liner to incrementally deploy your entire Hugo website.

---

<div class="post-metadata">

**Author:** ![cshoredaniel](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/cshoredaniel/32/19684_2.png) [@cshoredaniel](https://discourse.gohugo.io/u/cshoredaniel)\
**Post date:** [April 30, 2023, 6:02am UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/6 "2023-04-30T06:02:46Z")

</div>

If using Windows, you might want to check out `rclone` rather than `rsync`:

> **[Deployment with Rclone](https://gohugo.io/hosting-and-deployment/deployment-with-rclone/)**
>
> If you have access to your web host with SFTP/FTP/SSH/HTTP(DAV), you can use rclone to incrementally deploy your entire Hugo website.

---

<div class="post-metadata">

**Author:** ![Nedjma\_Media](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/nedjma_media/32/18929_2.png) [@Nedjma\_Media](https://discourse.gohugo.io/u/Nedjma_Media)\
**Post date:** [April 30, 2023, 6:25pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/7 "2023-04-30T18:25:10Z")

</div>

and when I make an update (change of css, addition of an article.md…etc) how should I do?  
Do I have to reload the entire site?

---

<div class="post-metadata">

**Author:** ![cshoredaniel](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/cshoredaniel/32/19684_2.png) [@cshoredaniel](https://discourse.gohugo.io/u/cshoredaniel)\
**Post date:** [April 30, 2023, 7:35pm UTC](https://discourse.gohugo.io/t/install-hugo-in-host/44110/8 "2023-04-30T19:35:27Z")

</div>

Rclone will only copy changed files (if the transport method used to connect to the site supports detecting that; details of that are on the [Rclone website](https://rclone.org)).

That is you do another `hugo --gc` or `hugo --gc --minify` (depending on your build details), and then the `rclone` command on the `public` directory, as described in the docs in the previous reply, and `rclone` will upload the changes.

If your transport method supports hashes, then you can even only upload changes even when you delete `public` and completely regenerate `public`.
