Code Monkey home page Code Monkey logo

git-commander's People

Contributors

calinou avatar golbin avatar hueypark avatar ionicabizau avatar jiwoong avatar jzsfkzm avatar krazyeom avatar matt-coles avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

git-commander's Issues

Checkout and reset (hard and soft) by relative commit

  • The checkout modal could have an option to switch to a tree view, displaying local and remote trees (through github integration), where the user could select a commit to checkout based on commit id or message
  • The same modal could be displayed for resets, allowing HEAD to be reset interactively

I'd be interested in submitting PRs for this or publishing it as its own tool so let me know if it fits with the goal of the project

Show branch name

Hey hey,

I just tried your project, and it looks nice. :bowtie:

What I would find really helpful to see the actual branch name when using git-commander.

In our workflows we usually name the branches with e.g. github issue numbers and connect via '#' to the issue.

E.g.

Branch name: feature/123-some-feature
Commit Msg: #123 add something

Thanks. :)

Log message with 'commit' fail to show log

Hi, nice command. :)

Testing here I found some strange behavior when you has 'commit inicial' in log message.

TypeError: Cannot read property 'name' of undefined
at /usr/lib/node_modules/git-commander/controller/log.js:59:48

      line = line + " {cyan-fg}<" + item.author.name + ">{/cyan-fg}";

author is undefined then I changed with:

      line = line + " {cyan-fg}<" + (item.author ? item.author.name : 'cu')  + ">{/cyan-fg}";

Now it works but with other strange effect, now I have one commit more with:
'inicial' 'No message' 'NaN month' 'Cu' (hash, message, time, author)

So I can think that this problem is about how code split commits :-/

:)

Cannot run, raises "undefined is not function" error

I installed it globally on node v0.10.26. When i tried to run it an error occurs with this stack;
TypeError: undefined is not a function
at Git.status (/usr/local/lib/node_modules/git-commander/model/git.js:70:16)
at Object.main.reload (/usr/local/lib/node_modules/git-commander/controller/main.js:94:9)
at Object. (/usr/local/lib/node_modules/git-commander/bin/git-commander:3:31)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3

CRASH in ^L LIST (v0.0.14)

Can be replicated (currently) with a clone of https://github.com/ramda/ramda
-- CHRIS

$ pwd
/home/cms/source/ramda
$ ls
BOOKMARKLET.md CHANGELOG.md dist LICENSE.txt package.json scripts test
bower.json CONTRIBUTING.md lib Makefile README.md src testem.json
$ git-commander

.. then press CTRL-L ...

TypeError: Cannot read property 'slice' of null
at /home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/program.js:2543:35
at Array.forEach (native)
at Program._attr (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/program.js:2542:11)
at Box.Element._parseTags (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/widgets/element.js:498:26)
at Box.Element.parseContent (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/widgets/element.js:393:22)
at Box. (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/widgets/element.js:184:10)
at Box.EventEmitter._emit (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/events.js:94:20)
at Box.EventEmitter.emit (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/events.js:117:12)
at emit (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/widgets/node.js:109:15)
at ScrollableBox.Node.insert (/home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/node_modules/blessed/lib/widgets/node.js:111:5)

$ cd /home/cms/.nvm/versions/node/v0.12.7/lib/node_modules/git-commander/

$ cat package.json
{
"name": "git-commander",
"version": "0.0.14",
"license": "MIT",
"repository": {
"type": "git",
"url": "git+https://github.com/golbin/git-commander.git"
},
"homepage": "https://github.com/golbin/git-commander",
"bugs": {
"url": "https://github.com/golbin/git-commander/issues"
},
"dependencies": {
"blessed": "^0.1.7",
"lodash": "^3"
},
"devDependencies": {},
"engines": {
"node": "^0.12"
},
"main": "controller/main.js",
"bin": {
"git-commander": "./bin/git-commander"
},
"keywords": [
"git",
"terminal"
],
"directories": {
"doc": "doc"
},
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"gitHead": "7962bb4d22f26e2459aea8c8a640b1226fa60e90",
"description": "A git tool with an easy terminal interface.",
"_id": "[email protected]",
"_shasum": "9c0c4fca2fa2594e394f5cee0834af78b7c68ccd",
"_from": "git-commander@*",
"_npmVersion": "2.13.4",
"_nodeVersion": "0.12.7",
"_npmUser": {
"name": "golbin",
"email": "[email protected]"
},
"maintainers": [
{
"name": "golbin",
"email": "[email protected]"
}
],
"dist": {
"shasum": "9c0c4fca2fa2594e394f5cee0834af78b7c68ccd",
"tarball": "http://registry.npmjs.org/git-commander/-/git-commander-0.0.14.tgz"
},
"_resolved": "https://registry.npmjs.org/git-commander/-/git-commander-0.0.14.tgz"
}

Display broken in true terminal

When I switch to a real text-mode TTY, the boundary between panes is moved to the extreme left and all the unstaged files show up in the left part of the screen instead of the right one.

Make "push" command

  • Add result window (message window)
  • Add push command
  • Check loading indicator
  • Choose from:to branch

Allow Force Deletion of Branches

When a branch is not fully merged, branch deletion is impossible within Git Commander.

Consider the following repo:

❯ mkdir git-repo
❯ cd git-repo
❯ git init
Initialized empty Git repository in ~/git-repo/.git/
❯ git checkout -b main
Switched to a new branch 'main'
❯ touch initial-commit
❯ git add --all
❯ git commit -m "Initial commit"
[main (root-commit) 431a8c2] Initial commit
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 initial-commit
❯ git branch
* main
❯ git checkout -b tmp
Switched to a new branch 'tmp'
❯ touch branch-file
❯ git add --all
❯ git commit -m "Branch commit"
[tmp 49ef858] Branch commit
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 branch-file
❯ git checkout main
Switched to branch 'main'

The resultant Git repo looks like this:

  * tmp
 /
* main

Trying to delete the branch results in an error, because the branch is not yet fully merged:

❯ git branch --delete tmp
error: The branch 'tmp' is not fully merged.
If you are sure you want to delete it, run 'git branch -D tmp'.
❯ git branch
* main
  tmp

In order to delete the unmerged branch, one must do a force delete:

❯ git branch --delete --force tmp
Deleted branch tmp (was 49ef858).
❯ git branch
* main

Git Commander does not allow for force deletion of branches. In the event that the user is requesting the deletion of a non-fully merged branch, Git Commander should provide a confirmation dialog stating that the branch is not fully merged. If the user cancels from the dialog, the deletion should do nothing (as it does today), but if the user confirms from the dialog, the deletion attempt should be re-executed forcefully (i.e. with the --force flag).

Change shortcuts

C-c is SIGKILL. So, it's better to change shortcuts.

Need to gather some idea. Like Vi? or Emacs? or something.

wanted: {"node":"^0.12"}

I am on windows and on install I get the following error:

npm WARN engine [email protected]: wanted: {"node":"^0.12"} (current: {"node":"4.2.1","npm":"2.14.7"})

The requirement is suppose to be any node version greater than 0.12. Right?

Cannot type the letter "q" in a commit message

I'm closing the commit editor when I type "q" ..
It's an easy fix tho.

I did a hotfix for it, if you are interested.. I might not be the "correct" way of doing it, I just check if the entered key is q when I'm inside the editor view.

    view.textarea.key(config.keys.common.quit, function(ch, key) {
      if (key.full === 'q') return;
      editor.hide();
    });

Broken status display

ANSI color codes are being displayed in the main view. I suspect it has something to do with my git config (~/.gitconfig) which contains

[color]
    # diff = always
    grep = always
    interactive = always
    status = always
    ui = auto
    branch = auto
    diff = auto

screenshot from 2015-08-10 17-18-22

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.