Git Product home page Git Product logo

git-kata's Introduction

Git Kata

Prerequisites

  • shell terminal
  • git >= 1.7

Instructions

  • Fork this repo
  • Clone it on your machine
  • Run ./start and follow the instructions

How it works

Each kata exposes you to a different scenario. Johnny is an imaginary developer that makes changes to simulate real life collaboration. You'll occasionally run into commit conflicts with him.

If you run into trouble you can just re run the kata and it will reset the world.

Command reference

Kata 0 - Basics

git status
git remote -v
git branch
git branch -a
git log origin/master..HEAD
git diff origin/master..HEAD

Kata 1 - Stashing

git stash
git pull --rebase
git stash pop

Kata 2 - Pull

git commit -am "My change"
git pull
git commit -am "Merging conflicts"
git push

Kata 3 - Pull with rebase

git commit -am "My change"
git pull --rebase
git add .
git rebase --continue

Kata 4 - Squashing commits

git rebase -i origin/master
change:
1 pick 0a0113f commit 1
2 pick 9106e18 commit 2
3 pick ff13755 commit 3
4 pick 844674c commit 4
To:
1 r 0a0113f commit 1
2 f 9106e18 commit 2
3 f ff13755 commit 3
4 f 844674c commit 4
reenter the git message

Kata 5 - Squashing commits with history overwrite

See Kata 4.

git rebase -i HEAD~4
git push -f

Kata 6 - Interactive add

git add -p

git-kata's People

Contributors

danielsiwiec avatar

Watchers

 avatar  avatar

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.