Console based Moving to folders. GIT repo management tool.
Project description
Features
- Can move to the project folder
- git command helper
- fetch, merge, status for multiple project
- CUI for git add/reset, commit
- CUI for git push from commit message
- CUI for find
- CUI for grep
Advantage
- The convenient CUI interface based on urwid(CUI)
- Can manage multiple git repositories conveniently
- Can do commit with seeing modification for commit msg under CUI
- Can push conveniently with commit message
How to install
Environment setup
** if you have installed pip3 and virtualenv already, skip it.
$ sudo apt install python3 python3-pip git $ sudo pip3 install virtualenv
Install
$ curl -L https://github.com/inertry/synapbookCommander/raw/stable/install.sh | bash -
or if you clone the repository already, $ echo ". $(pwd)/bash-script.sh" >> ~/.bashrc
How to use
Type 'dc'
main ui
-
j/k- move focus -
u- move upper folder -
h/enter- enter the folder -
E- edit the file -
n- Mark current item as trivial -
m- Mark current item as important -
f- filtering current folder items -
s- running shell command with $ for current selected file name -
/- command mode -
reg - Register current folder
-
find/ff - Running find command with CUI result ex> ff **.py
-
grep/gg - Running grep command with CUI result ex> gg Metric
-
R- Register/unregister this selected folder -
L- Show the list of repository folders -
C- Show commit dialog for current repo
workspace
Alt+Right/Left- Add or remove the folder in WorkspaceAlt+Up/Dowm- Move workspace between folder list
Commit helper(C key)
A- git add current fileP- prompty for git add -p commandR- reset current staged fileD- drop modification[/]- move next/previous fileJ/K- scroll down/up - you can use arrow key tooC- popup commit dialogF4/Q- quit the program
on commit dialog,
** you can see all staged modification for input commit message
- up/down - scroll current file's content
- f9/f10 - prev/next file to see modification
** then input commit message and then enter to do commit
Register folder list(L key)
P- pull --rebase all repoEnter- move to the selected repo
Commandline commends
$ dcf -name "**.py"
$ dcg "printf"
update all project repositories
$ dc update
** all projects that regsitered as repo are updated(git fetch + rebase to remote tracking branch + print status)
** update command is comprised of dc fetch + dc merge + dc st(status)
print all project's status
$ dc st
** you can combinate several command as follows,
$ dc fetch st
** you can print current folder or certain repo's status as well
$ dc update .
$ dc update plus
git CUI helper for add/reset, commit
$ dc ci
** you can use the following keys
git push
** you can conveniently push commits just specify target branch name
** push command always check tracking branch firstly than ask you to rebase onto.
$ dc push
** just type target branch you want to push to
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters