-
-
Notifications
You must be signed in to change notification settings - Fork 13
New documentation for gitconvex #25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
neel1996
merged 9 commits into
neel1996:documentation-update
from
Nageswari-droid:master
Jul 12, 2020
Merged
Changes from all commits
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
b8d92e8
Create DOCUMENTATION.md
Nageswari-droid 8de0bdb
Merge pull request #1 from Nageswari-droid/git-convex-documentation
Nageswari-droid cdf195f
Revised documentation for GitConvex
Nageswari-droid 5d12c73
Supported languages file
Nageswari-droid e2576b8
Language.md new patch
Nageswari-droid e1d6c32
Merge pull request #2 from Nageswari-droid/git-convex-documentation
Nageswari-droid 4a48465
Updated languages markdown file link
Nageswari-droid 9f2c4c2
Formatted languages
Nageswari-droid 6323f60
Revised documentation
Nageswari-droid File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,147 @@ | ||
# Introduction | ||
GitConvex is a web app for managing your git repositories. It is supported by Linux, Mac OS and Windows. The [latest version] (https://github.com/neel1996/gitconvex-package/releases) of GitConvex supports git features such as initializing and tracking a git repo, staging and unstaging changes, committing changes, pushing changes to the selected remote and so on. | ||
The main goal of this platform is to act as a web-based alternative for Github desktop, but we are still in the starting stages, so we are not completely there yet (baby steps, right?) | ||
## Table of Contents | ||
[Requirements](#requirements)<br> | ||
[Download Options](#download-options)<br> | ||
[Setup](#setup)<br> | ||
[Features available](#features-available)<br> | ||
[How to use](#how-to-use) | ||
- [Adding a new repo](#adding-a-new-repo) | ||
- [Repo Details](#repo-details) | ||
- [Add a new branch](#add-new-branch) | ||
|
||
## Requirements | ||
1. [Node JS](https://nodejs.org/en/) (Version 12.0+) | ||
2. [Git](https://git-scm.com/) (Version 2.20+) | ||
## Download Options | ||
- **Option-1:** Directly clone the repo from GitHub | ||
`git clone https://github.com/neel1996/gitconvex-package` | ||
|
||
- **Option-2:** Downloading the zip file from the [releases](https://github.com/neel1996/gitconvex-package/releases). | ||
|
||
- **Option-3:** GitConvex is also available on `npm`. Install the package globally to run it directly from the command line | ||
`npm i -g @itassistors/gitconvex` | ||
|
||
This will install **GitConvex** as a global module and it can be started straight away from the command line with `gitconvex` command | ||
``` | ||
$ gitconvex | ||
|
||
INFO: Checking for config file | ||
INFO: Config file is present | ||
INFO: Reading from config file /usr/lib/node_modules/@itassistors/gitconvex/env_config.json | ||
GitConvex API connected! | ||
|
||
Checking data file availability... | ||
INFO: Data file /usr/lib/node_modules/@itassistors/gitconvex/database/repo-datastore.json is present and it will be used as the active data file! | ||
You can change this under the settings menu | ||
GitConvex is running on port 9001 | ||
Open http://localhost:9001/ to access GitConvex | ||
``` | ||
## Setup | ||
|
||
If either download **Option-1** or **Option-2** is opted, then the following steps need to be followed to setup GitConvex | ||
1. For installing all dependencies, | ||
`` $npm install `` | ||
|
||
2. To start the server, either use normal node command | ||
`` $node server.js `` | ||
or use `pm2` by downloading it from npm - `npm i -g pm2` and start the module by executing the following command, | ||
`pm2 start ecosystem.config.js` | ||
|
||
## Features available | ||
- Visualizing basic repo stats such as active branch, active remotes, number of files tracked etc | ||
- Tracking modified files | ||
- Creating new branches (provided there are no diverging changes) | ||
- Initializing git inside a new repo and adding it to the platform tracker on the go | ||
- File difference tracker with syntax highlighting for the [supported languages] (LANGUAGES.md). | ||
- Commit log viewer | ||
- Basic git operations such as staging, un-staging, committing and pushing to remote repo. | ||
|
||
## How to use | ||
|
||
### Left Pane Menu | ||
|
||
- **Repositories** - To check tracked files changes, line-based changes with syntax highlighting and git operations (staging, un-staging, committing changes and pushing changed to remote) | ||
- **Settings** - To check and edit internal data file, to remove a repo from GitConvex and to update the active port. | ||
- **Help** - Includes documentation link and various options to report an issue or to submit feedback. | ||
|
||
### Adding a new repo | ||
- Use "+" at the bottom right corner to add a repo. | ||
<!-- .element style="height:10%; width:10%" --> | ||
|
||
- Enter repo name and paste the repo path. If the folder is not a git repo then check the "*Check this if the folder is not a git repo*" checkbox to initialize git. | ||
 | ||
|
||
- The newly added repo will be displayed as a card in the dashboard | ||
 | ||
|
||
### Repo Details | ||
- Click on the repo card to get the following details about the repo | ||
``` | ||
- The list of branches | ||
- Commit logs | ||
- Latest commit | ||
- Active branch and available local branches | ||
- Remote repo URL and host | ||
- Files and folders tracked by git | ||
``` | ||
The repo detail view also provides features for performing the following git operations, | ||
``` | ||
- Adding a new branch | ||
- Pulling changes from remote | ||
- Fetching changes from remote | ||
- Adding a new remote repo | ||
``` | ||
 | ||
|
||
 | ||
|
||
#### Add new branch | ||
 | ||
|
||
Note: In a newly initialized git repo, the newly added branch will be considered by git only after an initial commit | ||
|
||
## Repository Menu | ||
- The **Repository** menu has three sections: **File view, Git difference and Git operations**, which will be displayed based on the selected repo. | ||
|
||
### File View | ||
- File view shows the New/Untracked/Modified/Deleted files. | ||
 | ||
|
||
### Git Operations | ||
- Git operations module lets you handle three basic git operations (**Stage all changes, commit changes, push to remote**). Below this option, the files will be displayed and the files can be staged individually using the "Add" button or as a whole using the "stage all changes". | ||
 | ||
|
||
- The staged files can be removed individually or it can be removed all at once. | ||
 | ||
|
||
- The staged changes can be committed using the **Commit changes** option. This will display a pop-up with all the staged files and it requires a commit message to successfully commit the changes. The commit messages can either be a single line message or a multi-line message | ||
 | ||
|
||
- **Push to remote** option pushes all commits to the selected remote host. The pop-up displayed will display the commits which are in queue to be pushed to the remote repository | ||
 | ||
|
||
This section will let you know if the selected remote is not valid or if the push operation fails | ||
 | ||
|
||
### Git Difference | ||
|
||
In "Git Difference" click on the modified file to see the difference. The platform has syntax highlighting available for a limited set of [languages](LANGUAGES.md) | ||
 | ||
|
||
## Settings | ||
- Settings in the left pane has three sections (Server data file, saved repos, Active GitConvex port number). | ||
 | ||
|
||
- Server data file stores repo details such as the repo path, timestamp and the unique ID assigned to each repo. The data file must be an accessible JSON file with read / write permissions set to it. Also make sure you enter the full path for the file. E.g: /opt/my_data/data-file.json | ||
- In the saved repos section, added repo(s) can be deleted permanently from GitConvex. | ||
|
||
>Note that, this will only remove the repo from GitConvex records and it will not perform an actual folder delete operation | ||
|
||
- The port number can be updated to an available alternate port. Make sure that the port is not in use. The app needs to be restarted for the port change to take effect. | ||
|
||
## Help and Support | ||
|
||
- Visit help section if you're facing an issue or need any help. If you have any queries or feedback, then discuss it in "Discord" or report an issue in GitHub. | ||
 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
## Languages | ||
|
||
|Extensions|Languages| | ||
|-|-| | ||
|**js**|JavaScript| | ||
|**java**|Java| | ||
|**py**|Python| | ||
|**c**|C| | ||
|**cp**|C++| | ||
|**go**|Go| | ||
|**rust**|Rust| | ||
|**ts**|TypeScript| | ||
|**dart**|Dart| | ||
|**php**|PHP| | ||
|**html**|Markup| | ||
|**json**|JSON| | ||
|**xml**|Markup| | ||
|**yaml**|YAML| | ||
|**yml**|YML| | ||
|**rb**|Ruby| | ||
|**jsx**|JSX| | ||
|**kt**|Kotlin| | ||
|**ktm**|Kotlin| | ||
|**kts**|Kotlin| | ||
|**cs**|C#| | ||
|**vb**|Visual Basics| | ||
|**css**|CSS| | ||
|
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Format the file extensions to make it Bold and fit it within a table
E.g