Skip to content

1292765944/git-in-python

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

##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.

About

rewrite git in python

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published