Hey
I'm looking for a friend to work together in building a side project with Rust.
A friend who knows C and Rust(and might be beginner like me!)
I'm a beginner in Rust, C and System programming.
Do you already have a project in mind, or is selecting a project to be part of the collaboration?
Hi @AmigoNico
I want to build a simplified git by reading the original C code and Implementing basic parts.
You may be interested in this video: https://youtu.be/u0VotuGzD_w
I suggest when reading the git sources, start with checking out a very early commit. When Linux released it the code was small and easier to understand, nicely commented and explains of the concepts were findable. Only a handfull of files.
Now the sources are huge.
Thanks @stonerfish
I've thought about going back to that 20-year-old code, but I wasn't sure if it would be a good idea! My worry is that a lot of the data structures, algorithms, and problem-solving methods might have been replaced by better ones over time. By doing this, I'd be learning and implementing an outdated version of Git. What do you think?
Wow! I checked out the very first commit from almost 19 years ago—it’s just 10 files and about 1,200 lines (can you believe it actually worked?). Now, the current version is around 1.5 million lines! Starting from day one might not be such a bad idea after all!
I am interested, though right now I don't have a lot of free time.
You can read an old commit. The basic data structure is simple and stable. Then more stuff built on to it. Such as all the git commands that look through the tree ect. The basic structure of what a file, hash, commit, etc is explained in the very early commits and the Al Gore rhythms in c are kind of short.
I think this is a great way to start—thanks so much, @stonerfish, for the helpful suggestion!
Your welcome. Happy hacking and let us see what you come up with.
Thanks @stonerfish,
sure.