From 10a1866ca58be44976829fcdf48012d526449e18 Mon Sep 17 00:00:00 2001 From: Stavros Siamantas Date: Tue, 13 Aug 2024 14:53:09 +0300 Subject: [PATCH] Add content to git beginner roadmap (#6538) * docs(git_github_beginners): add content * Apply suggestions from code review Uniformed the pre-link text --------- Co-authored-by: dsh --- .../basic-git-usage@PtU5Qwfzn3N1i3oRlCGoR.md | 15 ++++++++++++++- .../collaboration@bXfCUG3h1TIFPgD4WUDph.md | 15 ++++++++++++++- .../learn-the-basics@HlUUGj3dOZ68t4gIjerXh.md | 13 ++++++++++++- .../content/more-git@aZMVz6kc52vLGcZFD9Dgh.md | 14 +++++++++++++- .../content/more-github@sti_TAgZvSpuFWtygAsKc.md | 13 ++++++++++++- 5 files changed, 65 insertions(+), 5 deletions(-) diff --git a/src/data/roadmaps/git-github/content/basic-git-usage@PtU5Qwfzn3N1i3oRlCGoR.md b/src/data/roadmaps/git-github/content/basic-git-usage@PtU5Qwfzn3N1i3oRlCGoR.md index 72da5fd28..66d29c2dc 100644 --- a/src/data/roadmaps/git-github/content/basic-git-usage@PtU5Qwfzn3N1i3oRlCGoR.md +++ b/src/data/roadmaps/git-github/content/basic-git-usage@PtU5Qwfzn3N1i3oRlCGoR.md @@ -1 +1,14 @@ -# Basic Git Usage \ No newline at end of file +# Basic Git Usage + +Starting with a new project, you'll use `git init` to initialize a repository and then make changes using `git add`. Once ready, commit your work with `git commit`. If mistakes occur, `git reset` can help correct them. You'll also interact with remote repositories, whether private or public, by adding remotes (git remote add) and managing their connections through commands like `git fetch`, `git push`, and `git pull`. + +Learn more from the following resources: + +- [@video@Git Tutorial for Beginners: Learn Git in 1 Hour](https://www.youtube.com/watch?v=8JJ101D3knE&t=1135s) +- [@article@Git ignore](https://www.atlassian.com/git/tutorials/saving-changes/gitignore) +- [@article@Git remote](https://www.atlassian.com/git/tutorials/syncing) +- [@article@Git Cheat Sheet](https://education.github.com/git-cheat-sheet-education.pdf) +- [@official@Git Branching - Basic Branching and Merging](https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging) +- [@official@Creating a new repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-new-repository) +- [@official@Setting repository visibility](https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility) +- [@official@Pushing commits to a remote repository](https://docs.github.com/en/get-started/using-git/pushing-commits-to-a-remote-repository) \ No newline at end of file diff --git a/src/data/roadmaps/git-github/content/collaboration@bXfCUG3h1TIFPgD4WUDph.md b/src/data/roadmaps/git-github/content/collaboration@bXfCUG3h1TIFPgD4WUDph.md index 01ddb0cbb..17f86d485 100644 --- a/src/data/roadmaps/git-github/content/collaboration@bXfCUG3h1TIFPgD4WUDph.md +++ b/src/data/roadmaps/git-github/content/collaboration@bXfCUG3h1TIFPgD4WUDph.md @@ -1 +1,14 @@ -# Collaboration \ No newline at end of file +# Collaboration + +When working on projects with others, Git provides tools to facilitate collaboration through forking repositories using `git clone` or `git fork`, cloning them locally with git clone, managing pull requests with `git request-pull`, and resolving merge conflicts. To contribute effectively, follow established contributing guides and respect open-source licences that govern how contributors' work may be used by others. + +Learn more from the following resources: + +- [@article@Git Fork and Git Clone: The difference and why it's important!](https://dev.to/danielasaboro/git-fork-and-clone-whats-the-difference-190c) +- [@article@About pull requests](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests) +- [@article@About merge conflicts](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts) +- [@article@Setting guidelines for repository contributors](https://docs.github.com/en/communities/setting-up-your-project-for-healthy-contributions/setting-guidelines-for-repository-contributors) +- [@video@Git Fork vs Git Clone (Animated)](https://www.youtube.com/watch?v=rxh6MhK6Tbs) +- [@video@The EXTREMELY helpful guide to merge conflicts](https://www.youtube.com/watch?v=HosPml1qkrg) +- [@video@Free and Open Source software licenses explained](https://www.youtube.com/watch?v=UMIG4KnM8xw) +- [@official@OSI Approved Licenses](https://opensource.org/licenses) \ No newline at end of file diff --git a/src/data/roadmaps/git-github/content/learn-the-basics@HlUUGj3dOZ68t4gIjerXh.md b/src/data/roadmaps/git-github/content/learn-the-basics@HlUUGj3dOZ68t4gIjerXh.md index d8f15c162..cf50892ad 100644 --- a/src/data/roadmaps/git-github/content/learn-the-basics@HlUUGj3dOZ68t4gIjerXh.md +++ b/src/data/roadmaps/git-github/content/learn-the-basics@HlUUGj3dOZ68t4gIjerXh.md @@ -1 +1,12 @@ -# Learn the Basics \ No newline at end of file +# Learn the Basics + +A Version Control System (VCS) is a tool that helps developers manage changes to their code over time. It allows multiple versions of a project to exist simultaneously, making it easier to collaborate with others and maintain a record of all modifications. + +Learn more from the following resources: + +- [@article@What is version control?](https://www.atlassian.com/git/tutorials/what-is-version-control) +- [@article@What is Git? - The Complete Guide to Git](https://www.datacamp.com/blog/all-about-git) +- [@video@What is Git? Explained in 2 Minutes!](https://www.youtube.com/watch?v=2ReR1YJrNOM) +- [@official@GUI Clients](https://git-scm.com/downloads/guis) +- [@official@Getting Started - Installing Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) +- [@official@Creating an account on GitHub](https://docs.github.com/en/get-started/start-your-journey/creating-an-account-on-github) \ No newline at end of file diff --git a/src/data/roadmaps/git-github/content/more-git@aZMVz6kc52vLGcZFD9Dgh.md b/src/data/roadmaps/git-github/content/more-git@aZMVz6kc52vLGcZFD9Dgh.md index 2c5fb7e5e..08b651182 100644 --- a/src/data/roadmaps/git-github/content/more-git@aZMVz6kc52vLGcZFD9Dgh.md +++ b/src/data/roadmaps/git-github/content/more-git@aZMVz6kc52vLGcZFD9Dgh.md @@ -1 +1,13 @@ -# More Git \ No newline at end of file +# More Git + +Git offers several advanced features to manage complex scenarios, including hard resets with `git reset`, reverting changes with `git revert`, reordering commits with `git rebase`, merging in new changes with `git merge`, squashing commits into a single change, temporarily saving uncommitted changes with `git stash` and then applying them with `git stash apply`, and selectively picking specific commits from one branch to apply on another with `git cherry-pick`. + +Learn more from the the following resources: + +- [article@Resetting, checking out & reverting](https://www.atlassian.com/git/tutorials/resetting-checking-out-and-reverting) +- [@article@Git Reset and Revert Tutorial for Beginners](https://www.datacamp.com/tutorial/git-reset-revert-tutorial) +- [@article@Git Rebase vs Merge vs Squash: Choosing the Right Strategy for Version Control](https://medium.com/@shikha.ritu17/git-rebase-vs-merge-vs-squash-choosing-the-right-strategy-for-version-control-a9c9bb97040e) +- [@article@Git stash](https://www.atlassian.com/git/tutorials/saving-changes/git-stash) +- [article@Git cherry pick](https://www.atlassian.com/git/tutorials/cherry-pick) +- [@video@How To Squash Your Git History Like A Pro](https://www.youtube.com/watch?v=RwvTrSm7zEY) +- [@video@Git cherry pick tutorial. How to use git cherry-pick.](https://www.youtube.com/watch?v=wIY824wWpu4) \ No newline at end of file diff --git a/src/data/roadmaps/git-github/content/more-github@sti_TAgZvSpuFWtygAsKc.md b/src/data/roadmaps/git-github/content/more-github@sti_TAgZvSpuFWtygAsKc.md index d43c81902..004208d08 100644 --- a/src/data/roadmaps/git-github/content/more-github@sti_TAgZvSpuFWtygAsKc.md +++ b/src/data/roadmaps/git-github/content/more-github@sti_TAgZvSpuFWtygAsKc.md @@ -1 +1,12 @@ -# More GitHub \ No newline at end of file +# More GitHub + +In addition to Git, GitHub provides several features that enhance collaboration and project management. GitHub Actions allows for automating workflows and testing code within the platform, while the GitHub CLI enables users to interact with GitHub from their local terminal using commands like `gh`. Additionally, GitHub supports Markdown formatting for creating readable documentation and comments, which can be used in repositories and issues. + +Learn more from the following resources: + +- [@course@Microsoft Learn: Introduction to GitHub Actions](https://learn.microsoft.com/en-us/collections/n5p4a5z7keznp5) +- [@course@YouTube: GitHub Actions Playlist](https://www.youtube.com/watch?v=-hVG9z0fCac&list=PLArH6NjfKsUhvGHrpag7SuPumMzQRhUKY&pp=iAQB) +- [@official@GitHub CLI](https://cli.github.com/) +- [@official@GitHub CLI quickstart](https://docs.github.com/en/github-cli/github-cli/quickstart) +- [@official@Basic writing and formatting syntax](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax) +- [@article@Markdown Cheatsheet](https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet) \ No newline at end of file