<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.0">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2020-12-24T18:26:15+00:00</updated><id>/feed.xml</id><title type="html">Track Town Software</title><subtitle>This website uses the Jekyll static site generator and is hosted  on Github Pages.</subtitle><author><name>Chris Hamilton</name></author><entry><title type="html">GitHub Pages: User or Organization versus Project sites</title><link href="/jekyll/github/2020/12/22/GitHubPagesUserVsProjectSites.html" rel="alternate" type="text/html" title="GitHub Pages: User or Organization versus Project sites" /><published>2020-12-22T18:20:00+00:00</published><updated>2020-12-22T18:20:00+00:00</updated><id>/jekyll/github/2020/12/22/GitHubPagesUserVsProjectSites</id><content type="html" xml:base="/jekyll/github/2020/12/22/GitHubPagesUserVsProjectSites.html">&lt;h1 id=&quot;user-or-organization-site&quot;&gt;User or Organization site&lt;/h1&gt;

&lt;p&gt;In &lt;a href=&quot;/jekyll/github/2020/12/17/HelloGithubPages.html&quot;&gt;Hello GitHub Pages&lt;/a&gt; I wrote about creating a Github Pages User site to host &lt;a href=&quot;https://www.tracktownsoftware.com&quot;&gt;www.tracktownsoftware.com&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites&quot;&gt;GitHub allows one GitHub Pages User or Organization site per account&lt;/a&gt;. This special GitHub repository must be named in the form &lt;strong&gt;username.github.io&lt;/strong&gt; where username is your username (or organization name) on GitHub.&lt;/p&gt;

&lt;p&gt;On GitHub.com your source code for this site will be the familiar GitHub repository path &lt;strong&gt;https://github.com/username/username.github.io&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;What does it mean to be a GitHub Pages site? In a browser when you navigate to &lt;strong&gt;https://username.github.io&lt;/strong&gt; then GitHub will try to present the contents of this repository as a static website.&lt;/p&gt;

&lt;h1 id=&quot;project-site&quot;&gt;Project Site&lt;/h1&gt;

&lt;p&gt;Your other repositories (not named &lt;strong&gt;username.github.io&lt;/strong&gt;) can be set up to include a &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites&quot;&gt;GitHub Pages Project site&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;On GitHub let’s say you have a repository containing source code at &lt;strong&gt;https://github.com/username/mygreatlibrary&lt;/strong&gt; where username is your username (or organization name) on GitHub.&lt;/p&gt;

&lt;p&gt;You can publish documentation about &lt;strong&gt;mygreatlibrary&lt;/strong&gt; in the same repository.&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;The default publishing source for a GitHub Pages Project site is the root of the &lt;strong&gt;gh-pages&lt;/strong&gt; branch. You will have to add a &lt;strong&gt;gh-pages&lt;/strong&gt; branch to the &lt;strong&gt;mygreatlibrary&lt;/strong&gt; repository and add your markdown or html/javascript/css documentation files there.&lt;/li&gt;
  &lt;li&gt;You can alternatively add a folder named “docs” (or any name) to the &lt;strong&gt;mygreatlibrary&lt;/strong&gt; repository main or master branch to hold your documentation files. To designate this folder for your GitHub Pages Project site (Github describes this as &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site#choosing-a-publishing-source&quot;&gt;choosing a publishing source&lt;/a&gt;) go to the repository settings and scroll down to Github Pages Source and select the “docs” folder from the branch where you put it.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can see your &lt;strong&gt;mygreatlibrary&lt;/strong&gt; Github Pages Project site in a browser by navigating to &lt;strong&gt;https://username.github.io/mygreatlibrary&lt;/strong&gt;.&lt;/p&gt;

&lt;h1 id=&quot;managing-a-custom-domain-for-your-github-pages-sites&quot;&gt;Managing a custom domain for your Github Pages sites&lt;/h1&gt;

&lt;p&gt;Your default subdomain for all your Github Pages sites is &lt;strong&gt;username.github.io&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;You can use your own custom domain by following these DNS CNAME record instructions from Github: &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site&quot;&gt;Managing a custom domain for your GitHub Pages site&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;After following the above instructions for my tracktownsoftware.github.io repository I can now navigate to &lt;strong&gt;https://www.tracktownsoftware.com&lt;/strong&gt; rather than &lt;strong&gt;https://tracktownsoftware.github.io&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;A byproduct of a custom domain for username.github.io is it also affects the path to Project sites. For the &lt;strong&gt;mygreatlibrary&lt;/strong&gt; example I can now use &lt;a href=&quot;https://www.tracktownsoftware.com/mygreatlibrary&quot;&gt;https://www.tracktownsoftware.com/mygreatlibrary&lt;/a&gt; rather than &lt;a href=&quot;https://tracktownsoftware.github.io/mygreatlibrary&quot;&gt;https://tracktownsoftware.github.io/mygreatlibrary&lt;/a&gt;. You still have the option to set up a custom domain, such as &lt;strong&gt;www.mygreatlibrary.com&lt;/strong&gt;, in the mygreatlibrary repository by following &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site&quot;&gt;GitHub’s custom domain instructions&lt;/a&gt;.&lt;/p&gt;

&lt;h1 id=&quot;helpful-links&quot;&gt;Helpful links&lt;/h1&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://pages.github.com/&quot;&gt;What are GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://jekyllrb.com/docs/&quot;&gt;Jekyll Quickstart&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/getting-started-with-github-pages&quot;&gt;Getting started with GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/setting-up-a-github-pages-site-with-jekyll&quot;&gt;Blogging with Jekyll on GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site&quot;&gt;Managing a custom domain for your GitHub Pages site&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.markdownguide.org/basic-syntax/&quot;&gt;Markdown syntax&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://education.github.com/git-cheat-sheet-education.pdf&quot;&gt;Git Cheat Sheet&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.pluralsight.com/courses/how-git-works&quot;&gt;How Git Works (video)&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://code.visualstudio.com/docs/editor/github&quot;&gt;VSCode Working with GitHub&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://code.visualstudio.com/docs/editor/integrated-terminal&quot;&gt;VSCode Integrated terminal window&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><author><name>Chris Hamilton</name></author><category term="jekyll" /><category term="github" /><summary type="html">User or Organization site</summary></entry><entry><title type="html">Hello Github Pages</title><link href="/jekyll/github/2020/12/17/HelloGithubPages.html" rel="alternate" type="text/html" title="Hello Github Pages" /><published>2020-12-17T21:51:59+00:00</published><updated>2020-12-17T21:51:59+00:00</updated><id>/jekyll/github/2020/12/17/HelloGithubPages</id><content type="html" xml:base="/jekyll/github/2020/12/17/HelloGithubPages.html">&lt;h1 id=&quot;moving-my-website-to-github-pages&quot;&gt;Moving my website to GitHub Pages&lt;/h1&gt;

&lt;p&gt;Going into 2021 I decided to become more active on GitHub and try my hand at a programming blog. Before &lt;a href=&quot;https://pages.github.com/&quot;&gt;GitHub Pages&lt;/a&gt; I hosted my website on &lt;a href=&quot;https://www.discountasp.net/&quot;&gt;DiscountASP.NET&lt;/a&gt;. I began implementing my blog in ASP.NET but then decided it will be simpler to host it on a &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/about-github-pages#types-of-github-pages-sites&quot;&gt;GitHub Pages user site&lt;/a&gt; with the &lt;a href=&quot;https://jekyllrb.com/&quot;&gt;Jekyll&lt;/a&gt; static site generator.&lt;/p&gt;

&lt;p&gt;There’s a lot of information online for making your own GitHub Pages blog with Jekyll, so I won’t document the steps here. &lt;a href=&quot;https://www.kiltandcode.com/2020/04/30/how-to-create-a-blog-using-jekyll-and-github-pages-on-windows/&quot;&gt;This post on kiltandcode.com steps you through the entire process.&lt;/a&gt; See my list of helpful links below.&lt;/p&gt;

&lt;p&gt;The one issue I ran into: Jekyll required installing Ruby onto my Windows 10 computer. RubyInstaller ver 2.7 didn’t seem to install correctly, so I uninstalled it and found success with RubyInstaller ver 2.6.&lt;/p&gt;

&lt;h1 id=&quot;custom-domain-for-my-github-pages-site&quot;&gt;Custom Domain for my Github Pages site&lt;/h1&gt;

&lt;p&gt;I needed subdomain &lt;strong&gt;www.tracktownsoftware.com&lt;/strong&gt; and apex domain &lt;strong&gt;tracktownsoftware.com&lt;/strong&gt; to point to my new Github Pages site. Github explains how to &lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site&quot;&gt;Manage a custom domain for your GitHub Pages site&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The subdomain was easy. On DiscountASP.NET I added a DNS CNAME record to point &lt;strong&gt;www.tracktownsoftware.com&lt;/strong&gt; to  &lt;strong&gt;tracktownsoftware.github.io&lt;/strong&gt; (my Github Pages repository).&lt;/p&gt;

&lt;p&gt;The DiscountASP.NET DNS Manager doesn’t support ALIAS, ANAME or A records, so &lt;strong&gt;tracktownsoftware.com&lt;/strong&gt; still pointed to my old site. My solution was to do a redirect by making an empty “ASP.NET Web application (.NET Framework)” in VS2019 and then adding the index.html below. I deleted the existing files on DiscountASP.NET and then published my simple redirect web application.&lt;/p&gt;

&lt;div class=&quot;language-html highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;html&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;head&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;meta&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;charset=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;utf-8&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;meta&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;http-equiv=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;refresh&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;content=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;0; URL='https://www.tracktownsoftware.com'&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;
    &lt;span class=&quot;nt&quot;&gt;&amp;lt;title&amp;gt;&lt;/span&gt;Redirect to new www.TrackTownSoftware.com...&lt;span class=&quot;nt&quot;&gt;&amp;lt;/title&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/head&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;body&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/body&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/html&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h1 id=&quot;development-environment-for-my-github-pages-site&quot;&gt;Development environment for my Github Pages site&lt;/h1&gt;
&lt;p&gt;I use &lt;a href=&quot;https://code.visualstudio.com/&quot;&gt;Visual Studio Code&lt;/a&gt; to open and edit the project folder in my Git local repository. VSCode supports Git actions by clicking on icons in the project Explorer window, but I prefer typing Git commands into a VSCode terminal Bash window.&lt;/p&gt;

&lt;p&gt;In the VSCode terminal Bash window you can test your Jekyll website by running the command below. It will respond with a local server address you can click on. In VSCode you can make edits to your site, save and then refresh your browser window to see changes.&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ jekyll serve
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;If the above command doesn’t work try using:&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ bundle exec jekyll serve
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h1 id=&quot;helpful-links&quot;&gt;Helpful links&lt;/h1&gt;
&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://pages.github.com/&quot;&gt;What are GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://jekyllrb.com/docs/&quot;&gt;Jekyll Quickstart&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/getting-started-with-github-pages&quot;&gt;Getting started with GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/setting-up-a-github-pages-site-with-jekyll&quot;&gt;Blogging with Jekyll on GitHub Pages&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://docs.github.com/en/free-pro-team@latest/github/working-with-github-pages/managing-a-custom-domain-for-your-github-pages-site&quot;&gt;Managing a custom domain for your GitHub Pages site&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.markdownguide.org/basic-syntax/&quot;&gt;Markdown syntax&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://education.github.com/git-cheat-sheet-education.pdf&quot;&gt;Git Cheat Sheet&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://www.pluralsight.com/courses/how-git-works&quot;&gt;How Git Works (video)&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://code.visualstudio.com/docs/editor/github&quot;&gt;VSCode Working with GitHub&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://code.visualstudio.com/docs/editor/integrated-terminal&quot;&gt;VSCode Integrated terminal window&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</content><author><name>Chris Hamilton</name></author><category term="jekyll" /><category term="github" /><summary type="html">Moving my website to GitHub Pages</summary></entry></feed>