Giter Club home page Giter Club logo

gogit-2.0's Introduction

GoGit-2.0 ๐Ÿš€๐Ÿš€

GoGit is a project under OpenCode'22 that aims to improve the Git and GitHub skills of the contributors by completing some tasks. The tasks will be specified in the issue section of this repo and you need to complete these task with all the terms and conditions to be fulfilled. (2 days)

Project Setup ๐Ÿค

Don't worry ๐Ÿ˜… there is nothing which is needed to be setup. for now, just clone the repo and you are done. You can use any code editor to edit the files (even notepad too).
In the future there will be some files for some tasks that will require builds (Gradle or Maven) but I will be telling you the instruction of the setup at that time only.

Important points โœ”๏ธ

  • For contributions, kindly visit the CONTRIBUTING.md file.
  • I hope untill now you have already take a look at all the issue labels present in this project, if not please visit them.
  • Kindly visit all the templates present inside the .github directory as they are very very important.
  • All the basic resources for your understanding are present on the GoGit and git-and-github channel of our discord server.

Communication ๐Ÿ—ฃ๏ธ

If you have any doubt, problem or suggestions, you can ping me anytime in the GoGit channel of our Discord server.

Guidelines ๐Ÿ”ด

  1. Do not make PR which is not related to any issues.
  2. Do not make any irrelevant commits, if you make some by mistakes then please squash them.
  3. Be polite and gentle to other community members.
  4. Pull Request older than 3 days with no response from the contributor shall be marked closed.
  5. Don't worry about the maximum number of commits in a PR, it may vary from issue to issue. (Only valid for this repo) (Also keep the second point in mind)
  6. If somehow I didn't respond to your PR under 40 hours then first try to ping me on GoGit channel and if I didn't reply their too, then you are free to complain about me to the our discord server admins.
  7. Participants who didn't register for the event are not allowed to participate in any repo (project) under opencode organisation.

gogit-2.0's People

Contributors

88oo avatar aasthaaaa7 avatar abhay0o7 avatar akshatsgh avatar ananyaa07 avatar anshgeez31 avatar antsharma avatar atulbraj avatar aynansh avatar bhumi-cka avatar bhumika-kalaru avatar finesse-734 avatar itsaman1825 avatar jahnavigadde avatar kali-decoder avatar karishma2610 avatar maheshkarhale2111 avatar manishh12 avatar mistyravager avatar pankaj1707k avatar raylikesanime avatar ribhavbansal avatar riddhikedia avatar sanyam1259 avatar shiva177 avatar siddhant-agarwal4583 avatar sushantk1274 avatar terminatorthe avatar thedivineaurora avatar ykings12 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

gogit-2.0's Issues

Push Me ๐Ÿ“Œ

Create a directory inside CONTRIBUTORS of any name.
Now add, commit and push your changes to the repo.
So simple, just do that.
โŒš
โŒš
But in doing so you will face a problem.
I want that problem (you faced above) and the reason for that problem i.e. why you are facing that problem inside your info.md file.
Now add, commit and push your answer and make a PR.

Edit Message ๐Ÿ”ง

Answer this question in your info.md file in your own words. (Should be well explained)
How to edit the last commit message in git?
Now add and commit your changes and remember that your commit message should only have a title.
Now push your changes and make a PR. (Don't mention me at this point)
After this edit the commit message that you entered in the above commit such that it should have both a title and a description.
After doing this, push again.
Now, in your next reply on your PR, tag me and list out all the commands that you used until now to complete this task.
Note - Every command should be correct, even a slight change may cause you to lose points, because after reviewing your PR if there are any problems then I will move to the next mail (PR) in my mailing list.

Only the first 5 correct PRs will be merged.

Each time you do a change in your PR, please tag me on your PR, because If you tag me then I will receive mail, and the mail which I will receive first, will get reviewed first.

  • Only one commit is allowed per PR. (More than one commit must be squashed)
  • Don't need to solve merge conflicts after making the PR.
  • After creating your PR, you can't create a new PR, you have to do all your work in a single PR, so be alert when you do any changes.

No need to claim, only the first 5 correct PRs will be merged.

Different Delete

Task: You have to make two commits, then push them and make a PR. And after this, you have to delete any oen commit and then again you have to push your changes. After this push just tag me in your next reply and also mention all the used git commands correctly and in a proper way.

Now before making those first two commits, you have to decide which commit you are gonna delete later. Suppose you decided that you will be deleting the first commit so answer the question in your second commit and in the first commit you can do whatever you want at your convenience because finally, it is going to vanish or vice-versa.
Ques - Explain the whole process that you will be using to delete that commit.

Now, the twist is that you can't use the same process that is already merged i.e. if someone did the task successfully with a unique process then after him, no one can use that same process to delete the commit.

  • If two PRs have the same process then, the one who did it first and correctly will be merged and after this, the other contributor has to use a different method.
  • Any numbers of PRs (open or closed) are acceptable, but the condition is that you can't delete your repo.
  • In the end, your PR must have only one commit.

Don't forget to tag me at the end. Also, tag only one time, cause it will be beneficial to you.
This is an everyone issue, so if your PR has a unique method of removing a commit, then I will merge your PR.
Currently no deadline for the issue.

PS: If you want to do this task by any easy method, then do it first. ๐Ÿ™ˆ

Merge it ๐Ÿค

First, you have to answer the question (mentioned below) in your info.md file and make a commit on branch-2. After this, you have to merge branch-2 into branch-1 and then make a PR with your branch-1 to my branch-1.

Ques - Above, I told you to merge branch-2 into branch-1, tell me which type of merge is this and why? Also, explain it too.

Important points:

  • Before making PR, there should be only two commits in your PR, one done by me and one by you.
  • If you make more than one commit, then no problem, you can squash your commits into one, but you can't squash my commit, i.e. my commit should be as it is.
  • The commit done by you should have both a title and a description.

HINT: All the above-mentioned branches exist on the repo.

Cherry-pick

Before doing the task, read it completely and carefully.
You have to answer these two questions on two different branches such that both these branches should have only one commit.

Ques - 1 Which kind of development(s) do you do? (web/app/cc/etc).
Ques - 2 Resources that you follow to learn the above tech stacks (development)?
After answering each question, take a screenshot of the content of your info.md file and save it.

The title of the commit message for Ques - 1 is <GitHub username> - one. Ex:- ABHAY0O7 - one.
The title of the commit message for Ques - 2 is <GitHub username> - two.
The description of commit messages depends on you.

After making the commits, take a screenshot of the git log output in both the above branches and please save them.

Now, in a new branch, cherry-pick the above two commits in the reverse order i.e. if you answered the Ques-1 first then its, commit should be cherry-picked later and vice-versa.
Take the screenshot of cherry-picking's output for each commit and save them.
Also, remember that this new branch should not have any changes that you did during the task before cherry-picking.

Now, the main task is that while you were doing this whole task, you should never get any merge conflicts or any other conflicts.

After doing the task, just make a PR from the new branch.

Important points

  • No need to define anything. (neither in PR nor in info.md)
  • No need to write any commands.
  • I will be reviewing your PR on the Go-Git voice channel.
  • Only one PR is accepted, if you do anything wrong, then you have to correct it on that same PR and if you are unable to correct it then you can't do this task further.
  • Only two commits should be present in your PR.
  • Don't forget about the screenshots.

If your file is added in gitignore or doesn't exist on this repo then you can't do this task. To do it, follow your case

  • gitignore - if your file is added in gitignore, then just remove your file's path from the gitignore and make a commit to restore your file and then start this task.
  • new-comer - if you never contributed to this repo, then visit contributing.md and add your file and make a commit, after this start the task.

Find and Add ๐Ÿ™ˆ

"I am a basic git-related file which is present in almost all the repositories over GitHub but not present on this repo"
Guess the file "I" in the above phrase and add it to this repo.

First, find this file and add it to this repo and make a PR, then I will tell you the further steps of this task.
The deadline to make a correct PR for this half of the task is today.

Update gitignore

If your info.md file doesn't exist on this repo, then first complete any of these issues (#1 or #2) and also read the CONTRIBUTING.md. Now, wait for the merge of that PR and after merging proceed with this task.

Task starts from here ------------------------------------------------------------------------------------------------------------------

Add your info.md file inside gitignore.
Then push your changes and make a PR.

It is mandatory to make a PR for the above changes before moving to the next part of the task. Also, mention the issue number in this PR.

After this, you need to make one more commit such that after pushing that commit, your info.md file should exist on your local system, but not in your PR's files changed section.
In your PR, Files changed section should have something like this for your info.md file.
image

Conditions that must be followed by you:-

  • You can't delete your info.md file by just performing any deletion operation in your system like you just can't do left-click and then delete.
  • You can't cut that file and paste it into any other directory.
  • You can't use any git or terminal commands that delete your info.md file from your system.
  • Only two commits are allowed for the PR, lesser and greater can lead to closed PR.
  • No need to write any git commands in the PR message just write the issue number and some appropriate description.

Important message:- When you start working on this task, please write every git command that you used to do this task in a notepad or your notebook or anywhere else you like, but not in PR message.

When I will be finally reviewing your PR, at that time I will call you on the GoGit voice channel of discord to check that whether you did this task in a fair way or not i.e. whether the file exists in your directory or not and for the git commands too.
So please, be active on discord after completing your PR.

Create a SSH key

Create an SSH key for your GitHub account. (Remember the password you used while creating the SSH key)

Now, do fetch and merge on GitHub so that your repo got synced with mine.
After this clone your GoGit repo with the SSH URL and take a screenshot of the git clone <URL> command's output.

Now answer this question in your info.md file and make a PR.
Ques - What do you really understand from SSH keys in VCS? What are the advantages of using it?

Important points -

  • Try to answer the question in your words. You can write it in 2 or 3 lines or maybe in a complete paragraph but write only from your own understanding because only that will make sure that I will merge your PR. Don't copy answers, and don't take hints from others' answers.
  • If your info.md is untracked by git then track it. (Remove your file from gitignore)
  • If your info.md file doesn't exist on this repo then visit CONTRIBUTING.md and create one.
  • If you already know about SSH keys and also use one then just take the screenshot and answer the question.
  • Before making the PR, only one commit is allowed. (If there is more than one, then you have to squash them into one)
  • Copied answers from anywhere will lead to closed PR.
  • In the PR message attach the screenshot that I told you to take at the beginning of this task.
  • The only commit that you will make must have both a title and some description. (Failing in doing so will lead to closed PR.)

Resources -

PS: No need to claim, this is an everyone issue.

Create a private repository

Go over GitHub and create a new personal repository (Private) by yourself of any name and description and copy its URL, and add me as a collaborator with admin access on your repo.
After this add this repo URL in your info.md file and make a PR.

Note: If your info.md file is not there visit CONTRIBUTING.md

First time contributors

This issue is constrained only to those who never contributed over GitHub.

  • First fork this repo and then clone it to your local system.
  • Add your info.md file to this repo as I mentioned in the CONTRIBUTING.md
  • Tell us a little bit about yourself in your file.
  • Now add, commit and push your code and then open a PR.

For your help, all the resources are available on the Go-git and git-and-github channel of our Discord server.

Tell the Difference ๐Ÿ˜„

Create a new branch from the initial commit of this repo and name it initial-branch.
Then answer the following question in your info.md` file.

**Ques - ** You will see that some repo on GitHub has a main branch as their main but some have a master branch as their main branch. So, please explain in which case Git/GitHub creates main as the main branch and in which case it creates master as the main branch.

Now add and commit your answer to this question and create a PR from this initial branch to this repo's dummy-branch.
Condition: You must use the SHA key of the initial commit in any one of the git commands that you will use to complete this task.
PR which will be unable to fulfill the condition can be rejected.
If your info.md file is not there, then you have to make a new one.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.