developersIndia / wiki

✍🏽 The community wiki for r/developersIndia
https://wiki.developersindia.in
Creative Commons Zero v1.0 Universal
22 stars 15 forks source link

Git/Github Guide Wiki Proposal #43

Open Prakhargarg-2010196 opened 4 months ago

Prakhargarg-2010196 commented 4 months ago

Have you read the contributing guidelines for proposing a wiki?

What's this proposal about? What should this wiki cover? Who's the audience?

This proposal can be split into two formats (shall be decided which to be used stating both for reference)

Flows to choose from

  1. First Flow We can create one wiki containing the basics and advanced of git workflows with some resources in place to point where people can learn more.

  2. Second Flow We can create two separate wikis i.) basic git wiki containing basic workflows along with a faq section regarding some footnotes mentioned in the aforementioned. ii.) advanced git wiki containing the advanced workflows (later more can be added here)

For Basic workflows of git

Intended Audience : Complete beginners

  1. Setup git (show for all three types of machine windows,linux and mac)
  2. Create repository using local git and then add files to staging area and then commit your changes.
  3. Create connection of local git repository -> to a repository present on github(later can add for bit-bucket and other providers aswell)
  4. Basic flow of how to push the changes from local git repository to online repository
  5. Git pull command and fetch command . also their use-case as well as difference with example on our test repository.
  6. How to get log of the commits(git log) you have done and the status of the current branch? (git status)

Advanced Gitflows

Intended Audience : Intermediate and advanced.

Branching (branch and checkout)

  1. How to create branches in git
  2. How to switch from one branch to another.
  3. How to fetch the branch changes and how to pull them.
  4. How to delete the branch you have created both from local as well as online (git push -d as well as git branch -d also other methods to delete the branch or prune it)

    Merging techniques

  5. How to merge code from one branch to another ? i.direct using the merge ii.rebasing.
  6. How to deal with git merge conflicts what are they and methods to cope with them.

    Stashing and Going back in history things

  7. Usage of git stash command
  8. How to get better logs from git ?
  9. How to reset the commit without removing the commited changes (git reset --soft)
  10. how to reset the commit with removing the committed changes (git reset --hard) (>should most of the times avoided)
  11. how to revert the changes so that it would not remove the complete error from our history?

FAQ section (can be split afterwards and would contain mostly config things and theory topics in depth)

Git Branching Flows

  1. Git flow
  2. Trunk Based Flows and so on.

    How to setup SSH

Choose the category for this wiki

Community Guide

If this is a FAQ on the sub, please include links of similar posts from the subreddit

No response

Are you interested in authoring this wiki guide?

Yes

Code of Conduct

g0v1ndN commented 4 months ago

Looks great to me! I recommend you go with the second flow (two wikis).

Jarmos-san commented 4 months ago

The answer to the question - "what's this proposal about?" is very ambiguous. If I understand it right, is the proposal to add a wiki entry educating the audience about various Git Branching strategies?

Prakhargarg-2010196 commented 4 months ago

No this is not only about git branching strategies , this is a comprehensive wiki which would be sort of like a guide to both beginner and advanced people and hence the answer to the proposal is this way.