GithubHelp home page GithubHelp logo

jango73 / cutegit Goto Github PK

View Code? Open in Web Editor NEW
6.0 6.0 1.0 1.35 MB

UI for Git (and some day other SCMs), made with Qt/QML.

License: GNU General Public License v3.0

QMake 1.32% QML 33.55% C++ 64.52% Shell 0.09% Inno Setup 0.52%
git qml qt ui

cutegit's People

Contributors

jango73 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

linecode

cutegit's Issues

Finalize cloning

  • Real time output of cloning process
  • Select cloned repository tab on finished

Ability to create a branch

Add to commit context menu:

  • Branch from this

Git command:
git checkout -b < branchname > < sha1-of-commit >

Ability to view diff between any two commits

Describe the solution you'd like

  • Mark a commit as "left commit"
  • Mark a commit as "right commit"
  • View the result in the diff view

Describe alternatives you've considered
Git on console.

Notes

For embedded diff:
https://github.com/google/diff-match-patch

Show n lines of context in diff:
--unified=< n >

Check if local is ahead of remote:
git rev-list origin..HEAD

Check if local is behing remote:
git rev-list HEAD..origin

Graph drawing:
strathausen/dracula

Ability to edit command line

Describe the solution you'd like
The command line executed when issuing commands should be visible and editable before being executed. A nice place would be the status bar.

Describe alternatives you've considered
The only alternative is to execute the command in the console.

Fixes after refactoring

CGitCommands:

  • Make commands that modify files stackable

CRepository:

  • Improve file status update: not just a model reset but row by row update

Ability to change commit order

Describe the solution you'd like

  • From a log menu, select the commit to rebase on
  • In a list view, view the commit's child commits and change their order
  • Apply or cancel

Describe alternatives you've considered

  • In a console:
    • git rebase -i .....
    • change order of lines in text file

Implement SVN support

  • Make controller aware of repository type (Git or SVN)
  • Create feature flags in CCommands (can rebase, can push, etc...)
  • Create CSVNCommands, inherits CCommands

Manage gerrit features

Check if repo is a gerrit repo:

  • In .git/hooks/commit-msg, check presence of "Gerrit" and "add_ChangeId()"
  • In file .git/config, section [remote "origin"], variable url, check for presence of "gerrit"
  • Example:
    • [remote "origin"]
      • url = ssh:// < username > @ gerrit.xxx.xxx:29418/some_repo

If repo is marked as gerrit repo:

  • Push to "origin HEAD:refs/for/" instead of "origin branch"
    • Hint: branch=$(git rev-parse --abbrev-ref HEAD 2>/dev/null)
    • Hint: git push origin HEAD:refs/for/$branch
  • Ability to copy the remote commit-msg to .git/hooks/
    • Hint: scp -p -P 29418 < your username > @ < your Gerrit review server > :hooks/commit-msg < local path to your git > /.git/hooks/

"Expand all" and "Collapse all" buttons in tree view not working

Describe the bug
"Expand all" and "Collapse all" buttons in tree view don't do anything.

To Reproduce
Steps to reproduce the behavior:

  1. Open a repo with some subfolders
  2. Select "View -> Files as a tree"
  3. Click on 'Expand all'

Expected behavior
All tree nodes should expand.

Refactoring : CRepository

Create a CRepository class that holds all the models instead of CTreeFileModel holding them.
Since there are two file models, one class should rule them all.

Customizable UI

  • Allow multiple diff and blame views.
  • Add panes by subdiving existing ones
  • Choose content of every pane:
    • Files
    • Log
    • Graph
    • Diff
    • Blame
    • Output

Graph display to show history of all branches

Git command for ASCII graph:
git log --graph --all --pretty=format:"%h | %s | %an | %aI"
(Commit Id, subject, author, date)

Git command for commit hash and parents hash:
git log --pretty="%H %P"

Make a better file log view

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Show labels in log view

Describe the solution you'd like
In the log view, labes should indicate:

  • Current HEAD
  • Head of all branches (local and remote)
  • Tags

Create a 'default action' button

The app should take a guess at the "smartest" action to do. A button could be dedicated to that action.
Examples:

  • Current branch is more than n commits behind : "Pull" (Save stash, pull, pop stash)
  • Current branch is more than n commits ahead : "Push"
  • Working tree has some staged files: "Commit"
    ...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.