suryapratapsinghsuryavanshi / XGit

A Simple git client, provides flexibility to committers.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

XGit

A Simple git client, provides flexibility to committers.

Technologies: C++, Shell Script, CMake

What is the need of XGit

  • The Git only have CLI, command directive mode.
  • The Git is not easy to use for beginners.
  • The Git is not easy to use for non-technical people, becouse it use technical terms.
  • The XGit solve all the above problem with the terminal interactive interface.
  • Backward compatible, with most of Os.
  • Redefined the complex technical terms with simple one.

Essential components requirements and tools

  • C++: The XGit is written in C++.
  • Shell Script: The XGit is using shell script for some of the tasks not possible with C++. BOOK
  • CMake: The XGit is using CMake for building the project. LINK
  • Git: The XGit is use base layer Git for version controling. LINK
  • GCC MinGW-64: The XGit is using GCC MinGW-64 for compiling the C++ code. LINK

References

1. Video: What is git(English)
2. Video: What is git(Hindi)
3. Video: What is git and GitHub
4. Article: What are git and GitHub
5. GitHub: GitHub Repository

Compile & Run

How to manage files and directories.

.
├── LICENSE  # License file.
├── README.md # Documentation file.
├── assets # Contain all assests files.
│   └── ___.__
├── main.cpp # Main source code file.
├── CMakeLists.txt # Contain all cmake related code.
├── src
│   ├── headers # Contain all headers related to the codebase.
│   │   └── ______.h
│   └── lib # Contains all libs related to the codebase.
│       └── ______.lib
└── build # Output folder contain all binary files for final software.

Download Release:

Compilation and Installation [CROSS PLATFORM]:

# Run this script to compile and install the software in any platform.
./setup.sh

For compile with CMake:

cmake -G "MinGW Makefiles" -S . -B ./build

For build with CMake:

cmake --build .\build\

For run:

.\build\xgit

For compile with bash:

./setup.sh

How to Install the XGit to your system:

  • For Windows:
    mv ./build/xgit.exe c:/windows/system32
  • For Linux:
    sudo mv ./build/xgit /usr/bin

Code Style

Code Implementation Code Style
Class & Packages PascalCase
Namespace lower_snake_case
Constant CONSTANT_CASE
Function camelCase

For more: Google C++ Style Guide, Google Shell Script Style Guide

Comments

Comments should be self, described and for every piece of code that can do a task for a specific reason, there must be a elevrative comments. Comments documenting declarations should be full sentences, even if that seems a little redundant. This approach makes them format well when extracted into good documentation. Comments should begin with the name of the thing being described and end in a period.

About

A Simple git client, provides flexibility to committers.

License:MIT License


Languages

Language:C++ 87.2%Language:Shell 9.9%Language:CMake 2.9%