Take-Home Task: Clone Bootcamp Repo & Push to Your Account
Take-Home Task: Clone Bootcamp Repo & Push to Your Account
🎯 Objective: Get the bootcamp source code into your own GitHub repository so you can set up CI/CD and deploy it yourself.
⏱️ Time: 5–10 minutes
When: Complete this AFTER finishing the 000 - Pre-Bootcamp Setup Guide and BEFORE starting 001 - Deployment.
Prerequisites Checklist
Before starting, confirm these are all working:
- GitHub account created
- SSH key generated and added to GitHub
-
ssh -T git@github.comreturns "Hi USERNAME! You've successfully authenticated…" - Git installed and identity configured (
git config --global user.nameanduser.email)
❌ If any of the above are not done, go back to 000 - Pre-Bootcamp Setup Guide first.
Step 1: Create an Empty Repository on GitHub
- Go to https://github.com/new
- Fill in:
- Repository name:
bootcamp - Visibility: Public
- Repository name:
- ⚠️ Do NOT check any of these:
- ☐ Add a README file
- ☐ Add .gitignore
- ☐ Choose a license
- Click Create repository
You should see a page with setup instructions. Ignore those instructions — we'll push code from the cloned repo instead.
📌 Your repository URL:
https://github.com/USERNAME/bootcamp
Step 2: Clone the Bootcamp Source Code
Open your terminal (WSL Ubuntu for Windows, Terminal for macOS) and run:
git clone git@github.com:devopsmalaysia/bootcamp.git
Expected output:
Cloning into 'bootcamp'...
remote: Enumerating objects: ...
remote: Counting objects: 100% ...
remote: Compressing objects: 100% ...
Receiving objects: 100% ...
Resolving deltas: 100% ...
Then navigate into the project:
cd bootcamp
Step 3: Change the Remote to Your Repository
Currently, the origin remote points to the instructor's repo. Change it to point to YOUR repo:
git remote set-url origin git@github.com:USERNAME/bootcamp.git
⚠️ Replace
USERNAMEwith your actual GitHub username.
Verify the change:
git remote -v
Expected output (should show YOUR username, not devopsmalaysia):
origin git@github.com:USERNAME/bootcamp.git (fetch)
origin git@github.com:USERNAME/bootcamp.git (push)
Step 4: Push the Code to Your Repository
git push origin main
Expected output:
Enumerating objects: ...
Counting objects: 100% ...
Delta compression using up to X threads
Compressing objects: 100% ...
Writing objects: 100% ...
Total ... (delta ...), reused ... (delta ...)
To github.com:USERNAME/bootcamp.git
* [new branch] main -> main
Step 5: Verify
Open your browser and go to:
https://github.com/USERNAME/bootcamp
✅ You should see all the project files — folders like apps/, services/, contracts/, .github/, etc.
If you see an empty repository or a 404 page, something went wrong — check the Troubleshooting section below.
Step 6 (Optional): Add Upstream for Future Updates
If the instructor pushes updates to the original repo and you want to sync them:
git remote add upstream git@github.com:devopsmalaysia/bootcamp.git
Verify:
git remote -v
Expected output:
origin git@github.com:USERNAME/bootcamp.git (fetch)
origin git@github.com:USERNAME/bootcamp.git (push)
upstream git@github.com:devopsmalaysia/bootcamp.git (fetch)
upstream git@github.com:devopsmalaysia/bootcamp.git (push)
To sync instructor updates in the future:
git fetch upstream
git merge upstream/main
git push origin main
Summary of Commands
# 1. Clone source repo
git clone git@github.com:devopsmalaysia/bootcamp.git
cd bootcamp
# 2. Change remote to YOUR repo
git remote set-url origin git@github.com:USERNAME/bootcamp.git
# 3. Verify
git remote -v
# 4. Push
git push origin main
# 5. (Optional) Add upstream
git remote add upstream git@github.com:devopsmalaysia/bootcamp.git
Troubleshooting
"Permission denied (publickey)" on clone
# Your SSH key isn't working. Fix:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
ssh -T git@github.com
# Should say: "Hi USERNAME! You've successfully authenticated..."
# Then retry the clone.
"Repository not found" on push
# Check the remote URL is correct:
git remote -v
# Common issues:
# - Typo in username
# - Repo not created yet (go back to Step 1)
# - Repo was initialized with README (delete it and recreate empty)
# Fix the URL:
git remote set-url origin git@github.com:YOUR_CORRECT_USERNAME/bootcamp.git
"Repository not empty" / "Updates were rejected"
You accidentally initialized the repo with a README or other files.
Fix: Delete the repo on GitHub and recreate it:
- Go to
https://github.com/USERNAME/bootcamp/settings - Scroll to bottom → Delete this repository
- Go back to Step 1 and recreate it without any initialization
"fatal: not a git repository"
You're not inside the bootcamp folder:
cd ~/bootcamp
# or wherever you cloned it
What's Next?
Once your code is pushed to https://github.com/USERNAME/bootcamp, proceed to:
➡️ 001 - Bootcamp Deployment Reference
This guide walks you through:
- Setting up CI/CD (GitHub Actions builds your Docker images)
- Configuring your VPS
- Deploying your app live at
https://USERNAME.lazuar.dev