Git Product home page Git Product logo

git-in-python's Introduction

##Overview This is the git-in-python project.

It aims to rewrite Git in Python, perhaps with some C code for high performance.

The file named 'git.py' is the entrance of the whole project.

##Why The Official Git written in C attracts hackers all over the world since created.

When I start using Git, I can't stop thinking about why is Git so unique? How did hackers build it? What are the branches, objects, protocols inside the Git source code?

When people talk about a product that is awesome, they are usually talking about the outside of the product.However, I mean when the outside of a product is awesome, the inside of the product is also very likely to be awesome such as iPhone, MacBook, BMW and some famous software.

Git is one of them, as we know, created by Linus Torvalds in 2005 with a legendary history: https://lkml.org/lkml/2005/4/6/121

So, curiosity drives me to look inside Git and rewrite it, which brings me lots of fun.

This project takes me a lot of time. I have to work for company during the day so that I can only dev this project during a few hours at night.

##Requirement Rewrite Git in Python seems not something easy, so this project is not for C/Python/Git beginners.

However, don't get frustrated, It's not that hard.You can contribute to this project step by step:

  1. learn C: The C Programming Language
  2. learn Python: The Python Tutorial
  3. learn Git: Pro Git
  4. read Git dev documents: the official Git technical documents
  5. understand Git source code: the official Git source code
  6. fork this project, fix bugs, add features, and even rebuild the architecture.

##Target Dev the core command of the official git such as 'init', 'add', 'commit', 'push', 'clone' that when we run git.py xxx, the result is the same as git xxx. Otherwise, there is something wrong maybe.

##Future Surely, It takes time, It takes patients.

I don't care that at all. I love the fun in this project and the smart people working together.

I'm interested in the smart people all over the world, especially the doers who can always get things done, not the talkers.

Let's go.

git-in-python's People

Contributors

lzrak47m4a1 avatar

Watchers

 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.