Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

github project sub-directory redirects to custom domain

I have a github project page here: lwymarie.github.io/QPQ_Web/Quasars_Probing_Quasars/Welcome.html

The project is named QPQ_Web. There's an index.html file in it, which points to a Welcome.html file inside the sub-directory Quasars_Probing_Quasars, where all other html files are also stored.

I'd like to replace the entire lwymarie.github.io/QPQ_Web/Quasars_Probing_Quasars/ part of the URL by www.qpqsurvey.org. i.e. I want to skip the Quasars_Probing_Quasars sub-directory in the URL. Please refer to the current www.qpqsurvey.org site to get an idea of what I mean.

Is it possible to set a permalink for this purpose without restructuring my files? Thanks.

like image 461
Marie Wingyee Lau Avatar asked Apr 25 '17 03:04

Marie Wingyee Lau


People also ask

How do I redirect a custom domain to GitHub?

On GitHub, navigate to your site's repository. Under your repository name, click Settings. In the "Code and automation" section of the sidebar, click Pages. Under "Custom domain", type your custom domain, then click Save.

Can you use a custom domain with GitHub Pages?

You can customize the domain name of your GitHub Pages site. GitHub Pages is available in public repositories with GitHub Free and GitHub Free for organizations, and in public and private repositories with GitHub Pro, GitHub Team, GitHub Enterprise Cloud, and GitHub Enterprise Server.


1 Answers

It appears to be related to this question: Set subdirectory as website root on Github Pages

(1) Follow the below instructions to make your subdirectory as GitHub root, then (2) redirect http://www.qpqsurvey.org to gh-pages as you ordinarily would according to GitHub's custom domain instructions: https://help.github.com/articles/using-a-custom-domain-with-github-pages/

Copying the answer of @CodeWizard which in turn was cited from https://gist.github.com/cobyism/4730490 for the first half of my answer:

Deploying a subfolder to GitHub Pages

Sometimes you want to have a subdirectory on the master branch be the root directory of a repository’s gh-pages branch. This is useful for things like sites developed with Yeoman, or if you have a Jekyll site contained in the master branch alongside the rest of your code.

For the sake of this example, let’s pretend the subfolder containing your site is named dist.

Step 1

Remove the dist directory from the project’s .gitignore file (it’s ignored by default by Yeoman).

Step 2

Make sure git knows about your subtree (the subfolder with your site).

git add dist && git commit -m "Initial dist subtree commit"

Step 3

Use subtree push to send it to the gh-pages branch on GitHub.

git subtree push --prefix dist origin gh-pages

Boom. If your folder isn’t called dist, then you’ll need to change that in each of the commands above.


If you do this on a regular basis, you could also create a script containing the following somewhere in your path:

#!/bin/sh
if [ -z "$1" ]
then
  echo "Which folder do you want to deploy to GitHub Pages?"
  exit 1
fi
git subtree push --prefix $1 origin gh-pages

Which lets you type commands like:

git gh-deploy path/to/your/site
like image 81
Moobie Avatar answered Oct 17 '22 00:10

Moobie