M Musaed AlKout
Overview

This week’s topic was Project Management and learning how to use Git to sync my files between a remote repository and my local machine. The task itself was small, but it was tricky because I had to learn command-line Git commands instead of using a GUI interface.

Research

Since I’m using a MacBook Pro, I researched how to use Git through the Terminal. I discovered that Git tools were not set up the way I needed at first, so I completed the following steps.

Steps

1) Open Terminal

I opened the Terminal application on macOS.
Openning Terminal

2) Create a local project folder

I created a folder on my Desktop named FabLab2026:
mkdir -p ~/Desktop/FabLab2026
cd ~/Desktop/FabLab2026

3) Clone the remote repository to my local machine

To download the repository files locally, I used git clone:
git clone https://gitlab.fabcloud.org/academany/fabacademy/2026/labs/vujade/students/musaed-alkout
REPO Results

After cloning, I checked the folder and confirmed that all repository files were copied locally.

4) Edit the website files locally I used my default editor to update this page and other pages directly from the cloned folder. Image Optimization (ffmpeg)

Since I needed to include images in my documentation, I compressed them to reduce file size and keep the website fast.
Install ffmpeg (macOS)
I installed ffmpeg using Homebrew:
brew install ffmpeg

REPO Results

Compress an image I compressed my avatar image using:
ffmpeg -i me.jpg -q:v 10 me2.jpg

REPO Results

Pushing changes back to the remote repository

After finishing all edits, I used the following Git commands to upload my changes:
# Go into the repo folder (adjust folder name if needed)
cd ~/Desktop/FabLab2026/musaed-alkout

# Check what changed
git status

# Stage all changes
git add .

# Commit changes with a message
git commit -m "Update weekly documentation + compress images"

# Push to the remote repository
git push

Notes / Common issues
If git push asks for authentication, GitLab may require a Personal Access Token instead of your password.
If you see “nothing to commit,” it means there are no changes staged or saved.


What I learned • How to clone a remote repository to my local machine.
• How to use the basic workflow: status → add → commit → push.
• How to optimize images for web documentation using ffmpeg.