<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Elijah Karimi</title>
    <description>The latest articles on DEV Community by Elijah Karimi (@mich2025).</description>
    <link>https://dev.to/mich2025</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4071723%2F5ba37b41-b7f9-43b1-8fc3-da21d919c1b1.jpg</url>
      <title>DEV Community: Elijah Karimi</title>
      <link>https://dev.to/mich2025</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/mich2025"/>
    <language>en</language>
    <item>
      <title>My First GitHub Project: From a Local Folder to GitHub Using Git &amp; SSH</title>
      <dc:creator>Elijah Karimi</dc:creator>
      <pubDate>Sun, 23 Aug 2026 06:37:42 +0000</pubDate>
      <link>https://dev.to/mich2025/my-first-github-project-from-a-local-folder-to-github-using-git-ssh-5gi2</link>
      <guid>https://dev.to/mich2025/my-first-github-project-from-a-local-folder-to-github-using-git-ssh-5gi2</guid>
      <description>&lt;h2&gt;
  
  
  Introduction
&lt;/h2&gt;

&lt;p&gt;It is important to note that &lt;strong&gt;Git&lt;/strong&gt; and &lt;strong&gt;GitHub&lt;/strong&gt; are not the same thing and have different purposes. &lt;strong&gt;Git&lt;/strong&gt; is a &lt;em&gt;version control system&lt;/em&gt; that runs on my PC and helps &lt;u&gt;track changes&lt;/u&gt; to files. &lt;strong&gt;GitHub&lt;/strong&gt; on the other hand is an online platform where Git repositories can be &lt;u&gt;stored&lt;/u&gt;, &lt;u&gt;shared&lt;/u&gt;, and &lt;u&gt;collaborated on&lt;/u&gt;. A &lt;strong&gt;Git repository&lt;/strong&gt; is a &lt;u&gt;storage space&lt;/u&gt; in a PC that contains project’s files along with the entire history of changes made to them. Therefore, &lt;strong&gt;Git&lt;/strong&gt; as the tool used to manage the history of a project &lt;u&gt;locally (on a PC)&lt;/u&gt;, while &lt;strong&gt;GitHub&lt;/strong&gt; provides a &lt;u&gt;remote&lt;/u&gt; location where I can store and access that project. &lt;br&gt;
This process requires Git the PC is linked to a GitHub account through &lt;strong&gt;SSH (Secure Shell)&lt;/strong&gt;, a &lt;em&gt;cryptographic network protocol&lt;/em&gt; that enables secure remote access, command execution, and file transfers over unsecured networks. &lt;br&gt;
This article is meant to explain how I created a project in a local folder, turned it into a &lt;strong&gt;Git repository&lt;/strong&gt;, connected it to &lt;strong&gt;GitHub&lt;/strong&gt;, configured SSH authentication, and pushed my work to the remote repository.&lt;/p&gt;
&lt;h3&gt;
  
  
  1. Starting With The Local Project
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Check File Location&lt;/strong&gt;&lt;br&gt;
First, I needed to check my current location by running the command &lt;code&gt;pwd&lt;/code&gt;. For that I got, &lt;code&gt;/c/Users/ezraw&lt;/code&gt;, the folder that I was on currently. &lt;br&gt;
A &lt;strong&gt;directory&lt;/strong&gt; is simply a folder. Your &lt;strong&gt;working directory&lt;/strong&gt; is the folder your terminal is currently operating inside.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Listing Files and Folders in the current location&lt;/strong&gt;&lt;br&gt;
I ran the command, &lt;code&gt;ls&lt;/code&gt; and got results of every folder in my working directory.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Moving to Desktop&lt;/strong&gt;&lt;br&gt;
My Desktop was my preferred location for the project on my PC. My Desktop was located in OneDrive therefore I ran &lt;code&gt;cd OneDrive/&lt;/code&gt;. Thereafter, I ran &lt;code&gt;cd Desktop&lt;/code&gt; to access my preferred location for the file I want to create.&lt;br&gt;
&lt;em&gt;&lt;strong&gt;N/B:&lt;/strong&gt;&lt;/em&gt; &lt;code&gt;cd&lt;/code&gt; means &lt;em&gt;&lt;strong&gt;Change Directory&lt;/strong&gt;&lt;/em&gt;, and it's the command used to &lt;u&gt;move&lt;/u&gt; into the folder one wants to access.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Verify Location&lt;/strong&gt;&lt;br&gt;
To verify if I was in my preferred folder, My Desktop, I ran &lt;code&gt;pwd&lt;/code&gt;and got &lt;code&gt;/c/Users/ezraw/OneDrive/Desktop&lt;/code&gt; thus confirming I was in the right location.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Creating the Project Folder&lt;/strong&gt;&lt;br&gt;
The project's name was kenyan-hospitals-health-records. I ran the following command &lt;code&gt;mkdir kenyan-hospital-health-records&lt;/code&gt;.&lt;br&gt;
&lt;em&gt;&lt;strong&gt;N/B:&lt;/strong&gt;&lt;/em&gt; &lt;code&gt;mkdir&lt;/code&gt; means &lt;strong&gt;Make Directory&lt;/strong&gt; or &lt;strong&gt;Create New Folder&lt;/strong&gt;&lt;br&gt;
To &lt;strong&gt;confirm the existence of the folder created&lt;/strong&gt; I ran &lt;code&gt;ls&lt;/code&gt; and got &lt;code&gt;kenyan-hospitals-health-records&lt;/code&gt; as one of the files listed.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Access the Folder&lt;/strong&gt;&lt;br&gt;
To access my newly created folder for my project, I ran &lt;code&gt;cd cd kenyan-hospital-health-records&lt;/code&gt;. To verify the file path and confirm folder's location, I ran &lt;code&gt;pwd&lt;/code&gt; and got &lt;code&gt;/c/Users/ezraw/OneDrive/Desktop/kenyan-hospitals-health-records&lt;/code&gt; as the result thus confirming my file path is as expected. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Creating the Project's Structure&lt;/strong&gt;&lt;br&gt;
To ensure order is established and avoid confusion or mistakes, I created folders within the main folder. I created three folders by running the following commands: &lt;br&gt;
&lt;code&gt;mkdir data&lt;/code&gt; &lt;br&gt;
&lt;code&gt;mkdir notebooks&lt;/code&gt; &lt;br&gt;
&lt;code&gt;mkdir scripts&lt;/code&gt;&lt;br&gt;
Every project should have a &lt;em&gt;brief description or overview&lt;/em&gt; in simple language, and therefore I created a README folder by running &lt;code&gt;touch README.md&lt;/code&gt;. &lt;br&gt;
To confirm the sub-folders created for the project, I ran &lt;code&gt;ls&lt;/code&gt; to get the list and got &lt;code&gt;README.md  data/  notebooks/  scripts/&lt;/code&gt;. &lt;br&gt;
&lt;strong&gt;N/B:&lt;/strong&gt; The &lt;em&gt;&lt;strong&gt;touch&lt;/strong&gt;&lt;/em&gt; command is usually used to generate file folders that have extensions. The &lt;em&gt;&lt;strong&gt;README.md&lt;/strong&gt;&lt;/em&gt; sub-folder provides a synopsis of the project using the Markdown syntax. The data sub folder hosts files such as excel and csv files. The &lt;em&gt;&lt;strong&gt;scripts&lt;/strong&gt;&lt;/em&gt; sub-folder is meant to store scripts used for the project e.g. Python scripts usually marked as &lt;code&gt;.py&lt;/code&gt;. The &lt;strong&gt;&lt;em&gt;notebooks&lt;/em&gt;&lt;/strong&gt; sub folder stores Jupyter Notebook scripts usually marked with &lt;code&gt;.ipynb&lt;/code&gt; thus ensuring order.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Adding the Existing Hospitals' Dataset to the Folders Created&lt;/strong&gt;&lt;br&gt;
I already had the data I need for the project in an excel workbook sheet file, .xlxs file. I copied the file path from the downloads folder where it was located. &lt;br&gt;
I then ran &lt;code&gt;cp&lt;/code&gt; command in the current terminal I was working in, which was, &lt;code&gt;/c/Users/ezraw/OneDrive/Desktop/kenyan-hospitals-health-records&lt;/code&gt;. This is meant to copy the entire excel worksheet file onto the current folder I am working on. &lt;br&gt;
I ran &lt;code&gt;cp ~/Downloads/Kenyan_Hospital_Health_Records.xlsx .&lt;/code&gt;and thereafter ran the &lt;code&gt;ls&lt;/code&gt; to verify if the excel worksheet was rightly copied, and I got the result as &lt;code&gt;Kenyan_Hospital_Health_Records.xlsx  README.md  data/  notebooks/  scripts/&lt;/code&gt;. This meant that the xlsx file which had the dataset was in the main project folder, and not in the data sub folder hence the need to move it to the data sub folder. I therefore ran &lt;code&gt;mv Kenyan_Hospital_Health_Records.xlsx data/&lt;/code&gt;&lt;br&gt;
&lt;strong&gt;&lt;em&gt;N/B:&lt;/em&gt;&lt;/strong&gt; &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;cp&lt;/code&gt; means _&lt;strong&gt;copy&lt;/strong&gt;. Copying a file path creates two or more files in the PC. Therefore, from my process I now have two xlsx files, one in Downloads and another similar file in the project's folder (that was moved into the Data sub-folder). &lt;/li&gt;
&lt;li&gt;
&lt;code&gt;mv&lt;/code&gt; means &lt;em&gt;move&lt;/em&gt;. Moving a file only changes the location of a file from the original location to the desired one. Upon running the command the result is README.md  data/  notebooks/  scripts/ where if I run &lt;code&gt;ls data&lt;/code&gt;, the result is &lt;code&gt;Kenyan_Hospital_Health_Records.xlsx&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Inspecting the Project&lt;/strong&gt;&lt;br&gt;
This was done by simply running ls command to verify everything is in order. The data structure would look like, &lt;br&gt;
kenyan-hospital-health-records/ &lt;br&gt;
│ &lt;br&gt;
├── README.md &lt;br&gt;
│ &lt;br&gt;
├── data/ &lt;br&gt;
│  └── Kenyan_Hospital_Health_Records_Analysis.xlsx &lt;br&gt;
│ &lt;br&gt;
├── notebooks/ &lt;br&gt;
│ &lt;br&gt;
└── scripts/&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Add Content to README.md&lt;/strong&gt;&lt;br&gt;
Like stated before, README.md is meant to provide brief overview about the project hence important to update it before I proceeded.&lt;br&gt;
I ran &lt;strong&gt;echo "# Kenyan Hospital Health Records Analysis" &amp;gt; README.md&lt;/strong&gt; to provide a title and context to it. Thereafter, I added more information into different subsections. &lt;br&gt;
Markdown syntax is used to add the information required in the README.md section.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;N/B:&lt;/em&gt;&lt;/strong&gt; &lt;strong&gt;Echo&lt;/strong&gt; command means &lt;strong&gt;&lt;em&gt;print text&lt;/em&gt;&lt;/strong&gt;. &lt;strong&gt;&amp;gt;&lt;/strong&gt; means&lt;br&gt;
&lt;strong&gt;&lt;em&gt;write&lt;/em&gt;&lt;/strong&gt; or &lt;em&gt;&lt;strong&gt;replace&lt;/strong&gt;&lt;/em&gt;. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Review/Display The README.md contents&lt;/strong&gt;&lt;br&gt;
I ran &lt;code&gt;**cat README.md**&lt;/code&gt;and confirmed everything was in order.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;NOTE:&lt;/em&gt;&lt;/strong&gt; &lt;strong&gt;Nano Text&lt;/strong&gt; can be used to write, &lt;em&gt;edit&lt;/em&gt;, &lt;em&gt;add&lt;/em&gt;, &lt;em&gt;remove text&lt;/em&gt; for &lt;em&gt;&lt;strong&gt;longer&lt;/strong&gt;&lt;/em&gt; README.md content. For this, I also ran &lt;code&gt;nano README.md&lt;/code&gt; allowing longer text but it will be visible in the folder. &lt;br&gt;
I then checked the file graphically by using explorer to confirm the contents of the main project's folder along with sub folders. I had two READ.me files, the first one was short and second one a tad longer which I used Nano Text.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Initialize the Project with Git&lt;/strong&gt;&lt;br&gt;
It is always important to confirm the location one is in. Therefore, I ran &lt;code&gt;pwd&lt;/code&gt; to confirm I am in the right terminal. Thereafter, I ran &lt;code&gt;git init&lt;/code&gt; and got Initialized &lt;code&gt;empty Git repository in C:/Users/ezraw/OneDrive/Desktop/kenyan-hospitals-health-records/.git/&lt;br&gt;
.&lt;/code&gt;&lt;br&gt;
&lt;code&gt;git init&lt;/code&gt; &lt;em&gt;&lt;strong&gt;command&lt;/strong&gt;&lt;/em&gt; means the &lt;em&gt;initialization&lt;/em&gt; of my project to a &lt;strong&gt;&lt;em&gt;git repository&lt;/em&gt;&lt;/strong&gt;; a storage space that contains your project’s files along with the entire history of changes made to them. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Locating&lt;/strong&gt; &lt;code&gt;.git&lt;/code&gt; &lt;strong&gt;Hidden Folder&lt;/strong&gt;&lt;br&gt;
Ran &lt;code&gt;ls&lt;/code&gt; and then after ran a deeper search by running &lt;code&gt;ls -la&lt;/code&gt; which resulted with some few additional files one of which included &lt;code&gt;.git&lt;/code&gt; folder. &lt;br&gt;
&lt;code&gt;.git&lt;/code&gt; folder contains Git's internal repository information. Git will use that. git folder to manage things such as: &lt;em&gt;Commits&lt;/em&gt;, &lt;strong&gt;&lt;em&gt;Branches&lt;/em&gt;&lt;/strong&gt;, &lt;strong&gt;&lt;em&gt;Repository configuration&lt;/em&gt;&lt;/strong&gt;, &lt;em&gt;Project history&lt;/em&gt; and &lt;strong&gt;&lt;em&gt;References&lt;/em&gt;&lt;/strong&gt;. That particular folder should not be manually deleted unless one wants to delete Git tracking and history from the project!&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Project Status&lt;/strong&gt;&lt;br&gt;
I ran &lt;code&gt;git status&lt;/code&gt; to check the current status of my project. The command meant to check the &lt;em&gt;current&lt;/em&gt; activities in one's project.&lt;br&gt;
Part of my result read, &lt;code&gt;Untracked files&lt;/code&gt; - a file that &lt;em&gt;exists&lt;/em&gt; in a project, but &lt;em&gt;&lt;strong&gt;tracking is yet&lt;/strong&gt;&lt;/em&gt; to start.&lt;br&gt;&lt;br&gt;
Upon running the command, I got the following results:&lt;br&gt;
&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Untracked files:
  (use "git add &amp;lt;file&amp;gt;..." to include in what will be committed)
        README.md
        README.md Kenyan Hospitals Data Record
        data/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;&lt;strong&gt;N/B:&lt;/strong&gt; A &lt;strong&gt;&lt;em&gt;modified file&lt;/em&gt;&lt;/strong&gt; is a file Git already knows about but whose contents have changed since the &lt;br&gt;
previous commit.&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;  - **_Changes to Be Committed_** - This means files have been staged and are ready for the next commit.
  - _**Working Tree Clean**_ - That means Git sees no new changes that need to be committed.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Transferring commits from the Local Repository to GitHub&lt;/strong&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From the start, I was working on a &lt;strong&gt;Working Directory&lt;/strong&gt; called &lt;code&gt;kenyan-hospitals-health-records&lt;/code&gt;, the title to my project's folder. &lt;br&gt;
To prepare for changes selected in my project thus far for my next &lt;strong&gt;&lt;em&gt;commit&lt;/em&gt;&lt;/strong&gt; I ran &lt;code&gt;git add&lt;/code&gt; and this point is called the &lt;strong&gt;&lt;em&gt;Staging Area&lt;/em&gt;&lt;/strong&gt;. A &lt;em&gt;&lt;strong&gt;commit&lt;/strong&gt;&lt;/em&gt; is a saved checkpoint in the history of a repository. &lt;br&gt;
&lt;strong&gt;Staging Area&lt;/strong&gt; - ran &lt;code&gt;git add&lt;/code&gt;.&lt;br&gt;
&lt;strong&gt;&lt;em&gt;N/B:&lt;/em&gt;&lt;/strong&gt; During the &lt;strong&gt;&lt;em&gt;Working Directory&lt;/em&gt;&lt;/strong&gt; and &lt;strong&gt;&lt;em&gt;Staging Area&lt;/em&gt;&lt;/strong&gt; phases the changes selected have &lt;u&gt;&lt;strong&gt;not&lt;/strong&gt;&lt;/u&gt; been uploaded to GitHub yet.&lt;br&gt;&lt;br&gt;
Thereafter I ran &lt;code&gt;Git Status&lt;/code&gt; to check on the new files created and got:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;[main (root-commit) c770225] add initial READMEs and Hospital dataset
 3 files changed, 32 insertions(+)
 create mode 100644 README.md
 create mode 100644 README.md Kenyan Hospitals Data Record
 create mode 100644 data/Kenyan_Hospital_Health_Records.xlsx
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Afterwards I ran &lt;code&gt;git  push&lt;/code&gt; along with a suitable title that follows the context of the project. This is important because it provides information on the sort of changes done for each saved checkpoint, commit.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Commit History and Development Line&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I ran 'git log' and 'git branch' to get the history line of development of the commit created.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ git log
commit c77022507a8cd958b058455ef35c0e2dc8b3233b (HEAD -&amp;gt; main)
Author: Your Full Name &amp;lt;karimielijahmaina@gmail.com&amp;gt;
Date:   Sun Aug 23 07:06:09 2026 +0300

    add initial READMEs and Hospital dataset

ezraw@accessgranted MINGW64 ~/OneDrive/Desktop/kenyan-hospitals-health-records (main)
$ git branch
* main

ezraw@accessgranted MINGW64 ~/OneDrive/Desktop/kenyan-hospitals-health-records (main)
$ pwd
/c/Users/ezraw/OneDrive/Desktop/kenyan-hospitals-health-records
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;GitHub Repository&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Now I needed to create a new GitHub repository for the project and hence the need to log into my account.&lt;br&gt;
For the connections options I opted for the SSH which was the key used to connect my Git to my GitHub after a successful configuration. To confirm that, I ran$ ssh -T &lt;a href="mailto:git@github.com"&gt;git@github.com&lt;/a&gt; and got:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;$ ssh -T git@github.com
Enter passphrase for key '/c/Users/ezraw/.ssh/id_ed25519':
Hi MainaKarimi1925! You've successfully authenticated, but GitHub does not provide shell access.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Connecting Local Project to GitHub&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I went back to GitBash/terminal. Confirmed my location of the project  ( 'pwd' ).&lt;br&gt;
I then ran &lt;code&gt;git remote add origin git@github.com:USERNAME/kenyan-hospital-health-records.git&lt;/code&gt;, where the username was my GitHub's one. &lt;strong&gt;Remote&lt;/strong&gt; - a repository account in connection with the local repository (main branch also called &lt;em&gt;&lt;strong&gt;origin&lt;/strong&gt;&lt;/em&gt;).&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Checking the Remote and Connecting the Project with Main Branch&lt;/strong&gt; 
I ran 'git remote -v' to ensure Git can &lt;strong&gt;&lt;em&gt;retrieve&lt;/em&gt;&lt;/strong&gt; or &lt;strong&gt;&lt;em&gt;fetch&lt;/em&gt;&lt;/strong&gt; from the remote repository. The name of the origin file must be similar to the name in the url in one's taskbar to avoid errors.
If an error occurs confirm if the Git and GitHub accounts are succesfully configured and/or check whether the title of the project in GitHub matches with the one on Git so that it can be located upon command. If the latter is the issue, as in my case, I ran the following commands:
&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;ezraw@accessgranted MINGW64 ~/OneDrive/Desktop/kenyan-hospitals-health-records (main)
$ git remote set-url origin git@github.com:MainaKarimi1925/kenyan-hospitals-health-records-.git

ezraw@accessgranted MINGW64 ~/OneDrive/Desktop/kenyan-hospitals-health-records (main)
$ git push -u origin main
Enter passphrase for key 'C:\Users\ezraw/.ssh/id_ed25519':
Enumerating objects: 6, done.
Counting objects: 100% (6/6), done.
Delta compression using up to 4 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 115.65 KiB | 540.00 KiB/s, done.
Total 6 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: Resolving deltas: 100% (1/1), done.
To github.com:MainaKarimi1925/kenyan-hospitals-health-records-.git
 * [new branch]      main -&amp;gt; main
branch 'main' set up to track 'origin/main'.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Confirming&lt;/strong&gt; &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;To confirm if the project has been added and linked to GitHub, I refreshed the remote repository page on the website.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqz7ovx1fwa9qxcfeo67y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fqz7ovx1fwa9qxcfeo67y.png" alt="Succesful connection of a Git repository to a GitHub account" width="800" height="401"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Challenges Faced
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Precision and Attention to Detail&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Exact Syntax Matching&lt;/strong&gt;: The biggest roadblock I faced today wasn't a conceptual misunderstanding, but a typographical one. For example, my GitHub URL ended in hospitals-health-records- but was initially typed as hospital-health-records. In technical writing and coding, systems are completely literal; a single missing letter or trailing hyphen will break the connection. More practice would help going forward.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Data Privacy Limitations and Risks with GitHub&lt;/strong&gt;&lt;br&gt;
Data is sensitive nowadays and each platform has strict rules. The remedy is to verify and be careful of what I share publicly going forward.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  3. Conclusion
&lt;/h2&gt;

&lt;p&gt;The Git workflow is based on a simple but powerful and strict sequence: &lt;strong&gt;&lt;em&gt;working directory&lt;/em&gt;&lt;/strong&gt;, &lt;em&gt;&lt;strong&gt;staging area&lt;/strong&gt;&lt;/em&gt;, &lt;strong&gt;&lt;em&gt;commit&lt;/em&gt;&lt;/strong&gt;, and &lt;strong&gt;&lt;em&gt;push&lt;/em&gt;&lt;/strong&gt;.&lt;br&gt;
The most important lesson is that these commands perform different jobs. &lt;code&gt;git add&lt;/code&gt; prepares changes, &lt;code&gt;git commit&lt;/code&gt; records them locally, and &lt;code&gt;git push&lt;/code&gt; transfers those commits to the remote repository.&lt;/p&gt;

&lt;p&gt;Once this &lt;u&gt;&lt;strong&gt;&lt;em&gt;workflow is understood&lt;/em&gt;&lt;/strong&gt;&lt;/u&gt;, &lt;strong&gt;Git&lt;/strong&gt; becomes much less confusing. Instead of memorizing commands individually, I can see them as steps in a logical process:&lt;/p&gt;

&lt;p&gt;WORK → STAGE → COMMIT → PUSH&lt;/p&gt;

&lt;p&gt;This workflow provides a reliable way to &lt;em&gt;&lt;strong&gt;track&lt;/strong&gt;&lt;/em&gt; project changes, maintain a &lt;em&gt;&lt;strong&gt;history of development&lt;/strong&gt;&lt;/em&gt;, and &lt;strong&gt;&lt;em&gt;safely share work through a remote repository&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Also, Technical Writing is fun and interesting. It actually enhances one's knowledge in the area of interest, as it was with me during this session.&lt;/p&gt;

</description>
      <category>git</category>
      <category>github</category>
    </item>
  </channel>
</rss>
