{"id":5087,"date":"2026-04-09T22:20:25","date_gmt":"2026-04-09T20:20:25","guid":{"rendered":"https:\/\/ucthpc.uct.ac.za\/?page_id=5087"},"modified":"2026-04-09T22:24:29","modified_gmt":"2026-04-09T20:24:29","slug":"using-github","status":"publish","type":"page","link":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/","title":{"rendered":"Using GitHub"},"content":{"rendered":"<section class=\"l-section wpb_row height_medium\"><div class=\"l-section-h i-cf\"><div class=\"g-cols vc_row type_default valign_top\"><div class=\"vc_col-sm-12 wpb_column vc_column_container\"><div class=\"vc_column-inner\"><div class=\"wpb_wrapper\">\r\n\t<div class=\"wpb_text_column \">\r\n\t\t<div class=\"wpb_wrapper\">\r\n\t\t\t<p style=\"text-align: center;\"><strong>Using GitHub on the cluster<\/strong><\/p>\n<p>Please don&#8217;t run git on the head node, rather use an <a href=\"https:\/\/ucthpc.uct.ac.za\/index.php\/hpc-cluster\/#interactivejobs\">interactive job<\/a>.<\/p>\n<p>All worker nodes access the internet through a proxy.\u00a0 This is fine for normal GitHub repos, however accessing private repos is a bit more challenging.\u00a0 You will need to generate an ssh key and store this in your GitHub account, then setup a ssh config file.<\/p>\n<p>Create an ssh key. It is recommended you use an ed25519 key:<\/p>\n<pre>ssh-keygen -t ed25519 -C \"MyEmail@Address\"<\/pre>\n<p>This will create an id_ed25519 keypair in your .ssh folder.<\/p>\n<p>Also in your .ssh folder create a config file.\u00a0 The contents of the file should be:<\/p>\n<pre>Host github.com\r\n   Hostname ssh.github.com\r\n   Port 443\r\n   User git\r\n   IdentityFile ~\/.ssh\/id_ed25519\r\n   ProxyCommand ncat --proxy-type http --proxy 10.105.1.2:8000 %h %p<\/pre>\n<p>&nbsp;<\/p>\n<p>Now login to GitHub.\u00a0\u00a0In the upper-right corner of any page on GitHub, click your profile picture, then click Settings.<\/p>\n<ul>\n<li>In the &#8220;Access&#8221; section of the sidebar, click SSH and GPG keys.<\/li>\n<li>Click New SSH key or Add SSH key.<\/li>\n<li>In the &#8220;Title&#8221; field, add a descriptive label for the new key. For example &#8220;UCTHPC&#8221;.<\/li>\n<li>Select authentication key.<\/li>\n<li>In the &#8220;Key&#8221; field, paste your public key. This is the contents of ~\/.ssh\/id_ed25519.pub<\/li>\n<li>Click Add SSH key.<\/li>\n<li>You may need to verify the key addition with 2FA.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>Now you can:<\/p>\n<pre>git clone git@github.com:SomeGitHubAccount\/somerepo.git<\/pre>\n\r\n\t\t<\/div>\r\n\t<\/div>\r\n<\/div><\/div><\/div><\/div><\/div><\/section>\n","protected":false},"excerpt":{"rendered":"Using GitHub on the cluster Please don't run git on the head node, rather use an interactive job. All worker nodes access the internet through a proxy.\u00a0 This is fine for normal GitHub repos, however accessing private repos is a bit more challenging.\u00a0 You will need to generate an ssh key and store this in...","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Using GitHub - UCT HPC<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Using GitHub - UCT HPC\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/\" \/>\n<meta property=\"og:site_name\" content=\"UCT HPC\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-09T20:24:29+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/\",\"url\":\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/\",\"name\":\"Using GitHub - UCT HPC\",\"isPartOf\":{\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#website\"},\"datePublished\":\"2026-04-09T20:20:25+00:00\",\"dateModified\":\"2026-04-09T20:24:29+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/#breadcrumb\"},\"inLanguage\":\"en-ZA\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/ucthpc.uct.ac.za\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Using GitHub\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#website\",\"url\":\"https:\/\/ucthpc.uct.ac.za\/\",\"name\":\"UCT HPC\",\"description\":\"University of Cape Town High Performance Computing\",\"publisher\":{\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ucthpc.uct.ac.za\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-ZA\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#organization\",\"name\":\"University of Cape Town High Performance Computing\",\"url\":\"https:\/\/ucthpc.uct.ac.za\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-ZA\",\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/ucthpc.uct.ac.za\/wp-content\/uploads\/2015\/09\/logocircless.png\",\"contentUrl\":\"https:\/\/ucthpc.uct.ac.za\/wp-content\/uploads\/2015\/09\/logocircless.png\",\"width\":450,\"height\":423,\"caption\":\"University of Cape Town High Performance Computing\"},\"image\":{\"@id\":\"https:\/\/ucthpc.uct.ac.za\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Using GitHub - UCT HPC","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/","og_locale":"en_US","og_type":"article","og_title":"Using GitHub - UCT HPC","og_url":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/","og_site_name":"UCT HPC","article_modified_time":"2026-04-09T20:24:29+00:00","twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/","url":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/","name":"Using GitHub - UCT HPC","isPartOf":{"@id":"https:\/\/ucthpc.uct.ac.za\/#website"},"datePublished":"2026-04-09T20:20:25+00:00","dateModified":"2026-04-09T20:24:29+00:00","breadcrumb":{"@id":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/#breadcrumb"},"inLanguage":"en-ZA","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/ucthpc.uct.ac.za\/index.php\/using-github\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/ucthpc.uct.ac.za\/"},{"@type":"ListItem","position":2,"name":"Using GitHub"}]},{"@type":"WebSite","@id":"https:\/\/ucthpc.uct.ac.za\/#website","url":"https:\/\/ucthpc.uct.ac.za\/","name":"UCT HPC","description":"University of Cape Town High Performance Computing","publisher":{"@id":"https:\/\/ucthpc.uct.ac.za\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ucthpc.uct.ac.za\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-ZA"},{"@type":"Organization","@id":"https:\/\/ucthpc.uct.ac.za\/#organization","name":"University of Cape Town High Performance Computing","url":"https:\/\/ucthpc.uct.ac.za\/","logo":{"@type":"ImageObject","inLanguage":"en-ZA","@id":"https:\/\/ucthpc.uct.ac.za\/#\/schema\/logo\/image\/","url":"https:\/\/ucthpc.uct.ac.za\/wp-content\/uploads\/2015\/09\/logocircless.png","contentUrl":"https:\/\/ucthpc.uct.ac.za\/wp-content\/uploads\/2015\/09\/logocircless.png","width":450,"height":423,"caption":"University of Cape Town High Performance Computing"},"image":{"@id":"https:\/\/ucthpc.uct.ac.za\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/pages\/5087"}],"collection":[{"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/comments?post=5087"}],"version-history":[{"count":2,"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/pages\/5087\/revisions"}],"predecessor-version":[{"id":5091,"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/pages\/5087\/revisions\/5091"}],"wp:attachment":[{"href":"https:\/\/ucthpc.uct.ac.za\/index.php\/wp-json\/wp\/v2\/media?parent=5087"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}