1. Project management

What is Git?

Git is a distributed version control system used to track changes in files and collaborate on software projects. It allows developers to manage code versions, work on branches, and merge changes seamlessly.

Key features of Git include:

  • Version control: Keeps track of changes to files and code.
  • Branching and merging: Supports experimentation without affecting the main codebase.
  • Collaboration: Allows multiple developers to work on the same project.
  • Distributed model: Developers can work offline and sync changes later.
  • Setting up Git

    I firstly created an account on Git from the link provided by Fablab, then have access to the projects.
    This is where all your projects will be saved.

    Git to local computer
    I downloaded the Git software from Git Download
    It is installed using default installation settings on local computer to avoid loss of installation location.
    local git account
    Before clonning the git repository to the local computer, the username and email should be configured to the local git application.
    I used below commands to set the git account locally to push data to the remote repository.

     git config --global user.name "My username"
    git config --global user.email "My email address"


    Clone a Repository
    To clone a repository the link (url) to the remote repository is required to synchronize data between local and remote repository.
    Get the repository URL:
    Go to your Git hosting service and navigate to the repository. Then go to code and copy the ssh url under clone with ssh.
    Navigate to the repository, then edit profile to add ssh key generated.

    Then add SSH key that will be used for authentication. GO to SSH key on the left menu, the go to add ssh key.

    Generate ssh key using this command; "ssh-keygen ". Paste the ssh key gernerated using git application.

    Clone the repositore using SSH to the local repository.
              "This is done by nevigating to the directory where local reposito will be saved, then open the Git bash in the local directory."
              git clone git@gitlab.fabcloud.org:academany/fabacademy/2025/labs/rwanda/students/molemohi-kapari.git





    You will find the project clone under the same location where you cloned it.

    How I made the website

    I have cloned the sample page provided on Git lab, then customized everything to reache my desired design.
    I used Visual Studio Code to create some pages locally by opening the local repository where I edited the content of the web pages.
    I used html for presentation of content in all pages.
    CSS is used to style and design the presentation of content.
    Javascript is used to expand and compress the information in the links to weekly assignments.

    After doing any modification to the project using Visual Studio Code, I do commit and push to update to synch with the remote repository. It can also be done using git bash with the below commands

          git commit -m "Added student Agreement"
          git push origin main
        

    Visual Studio Code commit and push.

    Final website

    Challenges

    I managed to create SSH Key for cloning remote repository and copied it to the Git profile, however, it denied access when cloning using SSH.
    The main usue is that local repository can not connect ot remote repository.
    I tried to add username and email on the terminal usig these commands ($ git config user.name [your-name], $ git config user.email [your.email@domain.com]), it did not go through.

    Solution.
    I uninstalled the git application then reinstalled again on the computer. After that it went well then managed to clone using ssh.