My Journey Into Git, GitHub & Version Control 💻

My Journey Into Git, GitHub & Version Control 💻

Publish Date: Jun 26
1 0

🧠 What I Learned About Version Control

I dove into the world of version control and learned how developers use Git and GitHub to manage and collaborate on code projects. Here’s a breakdown of the core concepts I grasped and practiced.


🔁 1. Forking

Forking lets you create your own copy of someone else’s repository under your GitHub account. It’s useful when contributing to open-source projects.

📍 GitHub → Go to a repo → Click “Fork”
Forking


👯 2. Collaboration

Git and GitHub make it easy for teams to work together:

  • Use branches to separate features
  • Use pull requests to share changes
  • Communicate through issues and reviews

Cloning

📬 3. Pull Requests (PRs)

A pull request proposes changes from your fork or branch to the main project.

# After committing your work
git push origin my-branch
Enter fullscreen mode Exit fullscreen mode

Then go to GitHub → Click “Compare & Pull Request” → Submit


⚔️ 4. Merge Conflicts

When two people change the same line of code, Git can’t decide whose changes to keep. This causes a merge conflict.

To resolve:

  • Git shows conflict markers
  • You manually fix the code
  • Then commit the resolved version

🔍 5. Code Review

After opening a PR, other contributors can review your changes:

  • Leave comments
  • Suggest improvements
  • Approve for merging

Code reviews improve quality and teamwork.


🐞 6. GitHub Issues

Issues are used to track:

  • Bugs 🐛
  • New features 🌟
  • Tasks ✅

Example: “Add search functionality”

PRs can reference issues using:

Fixes #5
Enter fullscreen mode Exit fullscreen mode

💻 7. Git Commands I Practiced

git clone <repo-url>                # Copy repo to local machine
git checkout -b new-branch          # Create and switch to a new branch
git add .                           # Stage changes
git commit -m "Your message"        # Save snapshot of changes
git push origin new-branch          # Push changes to GitHub
git pull origin main                # Sync with the main branch
Enter fullscreen mode Exit fullscreen mode

⬆️ 8. Pushing Changes to GitHub

Once I committed my changes:

git push origin feature-branch
Enter fullscreen mode Exit fullscreen mode

Then I opened a pull request and waited for feedback!


🔧 Centralized vs Distributed Version Control Systems

While learning about Git, I also explored the two main types of version control systems (VCS):

🏢 Centralized Version Control Systems (CVCS)

In a centralized system, there is one central server where all versions of a project are stored. Everyone connects to this server to get or submit changes.

Examples:

  • Subversion (SVN)
  • Perforce
  • CVS

Pros:

  • Simpler to understand
  • Easier to control access

Cons:

  • Single point of failure
  • Requires constant internet connection

🌍 Distributed Version Control Systems (DVCS)

In distributed systems like Git, every developer has a full copy of the project history. Changes can be made locally and pushed later.

Examples:

  • Git
  • Mercurial
  • Bazaar

Pros:

  • Work offline
  • Better collaboration
  • Faster operations

Cons:

  • Slightly more complex to learn initially

Git is a distributed version control system and that's what makes it so powerful for collaboration!


Learning Git and GitHub gave me superpowers 🦸‍♀️ to work with other developers, track my code history, and contribute to real-world projects with confidence.

“The best way to learn Git is to use Git.”


#git #github #versioncontrol #opensource #womenintech #productivity

Comments 0 total

    Add comment