Is it necessary to run gitlab-ci and creating .gitlab-ci.yml for gitlab pages

Can’t we put all stuff in just public folder manually. If can’t do then why ?

Why gitlab-ci is necessary to deploy gitlab pages site.

Hi @kcubeterm
because that is how the feature works.

Is there anyway to do manually.

GitLab Pages is not using your Git repository files. GitLab CI copies the files during job execution to GitLab Pages storage from where it is accessed.
If you have root access to the GitLab server you can try to create the directory structure and copy the files manually. I’ve never tried it so I cannot guarantee it will work. You also have to do it manually each time you want to update the files.

Just to add to what @balonik has explained, the Pages facility does not assume that your repository contains HTML files. It works for any static site, based on any technology stack. So, if you use Hugo or Jekyll or any other template engine, or you have other software that generated a web page (for example, in-code developer documentation) then even though you don’t have any HTML in your repo, Pages will work for you because your pipeline can build your site.