From 951f34afdb095e1ca796556bc069c99b0b12aa4e Mon Sep 17 00:00:00 2001 From: Prabuddha Hans <21313482@studentmail.ul.ie> Date: Mon, 22 Sep 2025 12:45:03 +0100 Subject: [PATCH] Feat: Created slides for git --- slides/compsoc/2025-2025/intro_to_git.md | 269 ++++++++++++++++++ slides/compsoc/2025-2025/intro_to_git/NAH.jpg | 3 + .../2025-2025/intro_to_git/bad_message.png | 3 + .../intro_to_git/forgejo_add_secret.png | 3 + .../intro_to_git/forgejo_repo_link.png | 3 + .../intro_to_git/forgejo_repo_settings.png | 3 + .../intro_to_git/forgejo_secrets_location.png | 3 + .../intro_to_git/forgejo_ssh_key_example.png | 3 + .../intro_to_git/forgejo_template_button.png | 3 + .../forgejo_template_repo_creation.png | 3 + .../intro_to_git/git_download_button.png | 3 + .../2025-2025/intro_to_git/git_installer.png | 3 + .../git_installer_checkout_unix.png | 3 + .../git_installer_default_rebase_pull.png | 3 + ...it_installer_notepad_as_default_editor.png | 3 + .../git_installer_rename_master_to_main.png | 3 + .../permission_denied_publickey.jpg | 3 + 17 files changed, 317 insertions(+) create mode 100644 slides/compsoc/2025-2025/intro_to_git.md create mode 100644 slides/compsoc/2025-2025/intro_to_git/NAH.jpg create mode 100644 slides/compsoc/2025-2025/intro_to_git/bad_message.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_add_secret.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_repo_link.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_repo_settings.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_secrets_location.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_ssh_key_example.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_template_button.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/forgejo_template_repo_creation.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_download_button.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_installer.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_installer_checkout_unix.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_installer_default_rebase_pull.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_installer_notepad_as_default_editor.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/git_installer_rename_master_to_main.png create mode 100644 slides/compsoc/2025-2025/intro_to_git/permission_denied_publickey.jpg diff --git a/slides/compsoc/2025-2025/intro_to_git.md b/slides/compsoc/2025-2025/intro_to_git.md new file mode 100644 index 0000000..b2e6354 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git.md @@ -0,0 +1,269 @@ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +title = "Git" +date = 2024-09-18 +slides = true ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + +# Git + +------------------------------------------------------------------------- + +Git is tool that's used in the programming industry. + +------------------------------------------------------------------------- + +Another name for Git is a Version Control System (VCS) tool. + +------------------------------------------------------------------------- + +Specifically to track project work done, and the changes to files we've made. + +------------------------------------------------------------------------- + +The more correct term is Source Control. + +------------------------------------------------------------------------- + +It is NOT a programming language. + +------------------------------------------------------------------------- + +Git is a tool made for (usually) us programmers to track the work we've done. + +------------------------------------------------------------------------- + +Programmer socks (not) included. + +------------------------------------------------------------------------- + +Now we need to ask WHY. + +------------------------------------------------------------------------- + +Why would we need a tool like this? + +------------------------------------------------------------------------- + +Why not use Google Drive instead? + +------------------------------------------------------------------------- + +I will find your IP address. + +------------------------------------------------------------------------- + +In all honesty, + +------------------------------------------------------------------------- + +It's to help keep track of who did what. + +------------------------------------------------------------------------- + +And to work on unique features... + +------------------------------------------------------------------------- + +without affecting the main area/branch of our work. + +------------------------------------------------------------------------- + +When DO we use git? + +------------------------------------------------------------------------- + +Because Git keeps track of the changes we've made to files, + +------------------------------------------------------------------------- + +We can then use it to commit and stage these files, + +------------------------------------------------------------------------- + +and push them to a place where we can store them. + +------------------------------------------------------------------------- + +This place is called a Repository. + +------------------------------------------------------------------------- + +Repositories are hosted on websites like GitLab, GitHub and Forgejo. + +------------------------------------------------------------------------- + +But, an interesting feature of git, is that it allows you to time-travel. + +------------------------------------------------------------------------- + +Meaning that if a project breaks, you can go back to before it broke. + +------------------------------------------------------------------------- + +Now I hear you in the audience asking... + +------------------------------------------------------------------------- + +Why not use SVN? + +------------------------------------------------------------------------- + +The answer is simple. + +------------------------------------------------------------------------- + +![NAH](intro_to_git/NAH.jpg) + +------------------------------------------------------------------------- + +An actual answer is that Git is Distributed, and SVN in centralized. + +------------------------------------------------------------------------- + +Simply put, devs can store their changes locally on their machines, + +------------------------------------------------------------------------- + +where on SVN they're stored on a central system. + +------------------------------------------------------------------------- + +With a central system you NEED to be connected at all times to work on it. + +------------------------------------------------------------------------- + +You can work locally on git without having to be connected, + +------------------------------------------------------------------------- + +and then push once you're reconnected. + +------------------------------------------------------------------------- + +Back to git. + +------------------------------------------------------------------------- + +Let's start with the basics. + +------------------------------------------------------------------------- + +# Live demonstration time + +Please get your laptop out + +------------------------------------------------------------------------- + +How to download git & git LFS + +------------------------------------------------------------------------- + +## Download +<> + +------------------------------------------------------------------------- + +![img.png](intro_to_git/git_download_button.png) + +------------------------------------------------------------------------- + +![img_1.png](intro_to_git/git_installer.png) + +------------------------------------------------------------------------- + +![img_2.png](intro_to_git/git_installer_notepad_as_default_editor.png) + +------------------------------------------------------------------------- + +![img_3.png](intro_to_git/git_installer_rename_master_to_main.png) + +------------------------------------------------------------------------- + +![img_4.png](intro_to_git/git_installer_checkout_unix.png) + +------------------------------------------------------------------------- + +![img_5.png](intro_to_git/git_installer_default_rebase_pull.png) + +------------------------------------------------------------------------- + +<> + + +------------------------------------------------------------------------- +Don't do this +![BAD](intro_to_git/bad_message.png) + +------------------------------------------------------------------------- + +![img_6.png](intro_to_git/forgejo_template_button.png) + +------------------------------------------------------------------------- + +![img_7.png](intro_to_git/forgejo_template_repo_creation.png) + +------------------------------------------------------------------------- + +![img_8.png](intro_to_git/forgejo_repo_link.png) + +------------------------------------------------------------------------- + +LFS Install + +------------------------------------------------------------------------- + +````bash +git lfs install +```` + +------------------------------------------------------------------------- + +Setup SSH key (see Readme.md)) + +------------------------------------------------------------------------- + +![img_9.png](intro_to_git/forgejo_repo_settings.png) + +------------------------------------------------------------------------- + +![img_10.png](intro_to_git/forgejo_secrets_location.png) + +------------------------------------------------------------------------- + +![img_12.png](intro_to_git/forgejo_add_secret.png) + +------------------------------------------------------------------------- + +![img_11.png](intro_to_git/forgejo_ssh_key_example.png) + +------------------------------------------------------------------------- + +````bash +git init +git remote add origin +git pull origin +git add +git commit -m "" +git push origin +```` +------------------------------------------------------------------------- + +``https://.users.skynet.ie/`` + +------------------------------------------------------------------------- + +TroubleShooting + +------------------------------------------------------------------------- + +If you see this: + +![img_13.png](intro_to_git/permission_denied_publickey.jpg) + +> Credit: Geeks for Geeks + +------------------------------------------------------------------------- + +Go here: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent + +------------------------------------------------------------------------- \ No newline at end of file diff --git a/slides/compsoc/2025-2025/intro_to_git/NAH.jpg b/slides/compsoc/2025-2025/intro_to_git/NAH.jpg new file mode 100644 index 0000000..46a5931 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/NAH.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5b93ccc50179e98170010e340bc6f44382e993e78fe6f46d06912da25acd4c43 +size 18232 diff --git a/slides/compsoc/2025-2025/intro_to_git/bad_message.png b/slides/compsoc/2025-2025/intro_to_git/bad_message.png new file mode 100644 index 0000000..8d1b2a0 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/bad_message.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ca10627c4c15cac9718378ba7cc16b20b74a571a21e1c1658de8fe82bf71a7e8 +size 143553 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_add_secret.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_add_secret.png new file mode 100644 index 0000000..90192ff --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_add_secret.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:11098766d2846bd3f96e4ca4fd0bde143de0e729aada9bfd2edbebcecb142ae6 +size 2832 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_link.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_link.png new file mode 100644 index 0000000..ec7092c --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_link.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3660f02d595cbeb89b0065a332142ce842e45278dc294a8e25f411b557c1c4da +size 8120 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_settings.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_settings.png new file mode 100644 index 0000000..3546f1e --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_repo_settings.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9f18da7c01ac92591cf959576833ca9ed497d6eb1b97bd964f36f435d76e3281 +size 5165 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_secrets_location.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_secrets_location.png new file mode 100644 index 0000000..51f7b8a --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_secrets_location.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9341c7c436972b714a18660fdfac823e0c316f6b70dc4f49b1f76227b278e9b3 +size 10243 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_ssh_key_example.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_ssh_key_example.png new file mode 100644 index 0000000..5337da1 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_ssh_key_example.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e31c9482b2fd2c91bb8511d02259d8b93b867697b5c6fdf86a93871ffd79caf +size 20991 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_template_button.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_template_button.png new file mode 100644 index 0000000..0976615 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_template_button.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cbfcc005d311e1e84b5a7ecbd8572f0384db6618041e89f3caa6457e5670fd6d +size 50537 diff --git a/slides/compsoc/2025-2025/intro_to_git/forgejo_template_repo_creation.png b/slides/compsoc/2025-2025/intro_to_git/forgejo_template_repo_creation.png new file mode 100644 index 0000000..87429a0 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/forgejo_template_repo_creation.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47dae1990bfd43afb40bbf08fa06fc7f3ac361c8dbb705c8f2ebd0668fb03fae +size 36306 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_download_button.png b/slides/compsoc/2025-2025/intro_to_git/git_download_button.png new file mode 100644 index 0000000..c42e917 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_download_button.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f129a2c0ffaab3d3347a613d7c6b081801b8fcf35f74c6e18e2a776389bc8020 +size 66338 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_installer.png b/slides/compsoc/2025-2025/intro_to_git/git_installer.png new file mode 100644 index 0000000..075d1fb --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_installer.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cac6c961d163603314e590d2ac21012e54d0297d6a5c680a1278dd3fe9f3a83d +size 21709 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_installer_checkout_unix.png b/slides/compsoc/2025-2025/intro_to_git/git_installer_checkout_unix.png new file mode 100644 index 0000000..a800f3b --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_installer_checkout_unix.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a29a7010fe4f61daf8f11ccdab87f1866d00d1f9fb403e4e4879e17b8a60882 +size 24415 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_installer_default_rebase_pull.png b/slides/compsoc/2025-2025/intro_to_git/git_installer_default_rebase_pull.png new file mode 100644 index 0000000..f33babb --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_installer_default_rebase_pull.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f7ec846689414760e50d83c027cf0ca3d8d0b6bde7e6ed44e8bfb95d3e23999 +size 17633 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_installer_notepad_as_default_editor.png b/slides/compsoc/2025-2025/intro_to_git/git_installer_notepad_as_default_editor.png new file mode 100644 index 0000000..1b6a50f --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_installer_notepad_as_default_editor.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ede2529a17922022246252dd9d7e93c8295a15ad53f92add4202037f2cc75ea4 +size 12213 diff --git a/slides/compsoc/2025-2025/intro_to_git/git_installer_rename_master_to_main.png b/slides/compsoc/2025-2025/intro_to_git/git_installer_rename_master_to_main.png new file mode 100644 index 0000000..7072736 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/git_installer_rename_master_to_main.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:25da12821d1dca87684b38ed88a5e731386bcd5de0a650994f29339136af6aec +size 20301 diff --git a/slides/compsoc/2025-2025/intro_to_git/permission_denied_publickey.jpg b/slides/compsoc/2025-2025/intro_to_git/permission_denied_publickey.jpg new file mode 100644 index 0000000..3223705 --- /dev/null +++ b/slides/compsoc/2025-2025/intro_to_git/permission_denied_publickey.jpg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:31aefed484217d5536232437904573768e62e53693f611d7ee68c450559692e0 +size 23819