git-jump: Move a git branch

[ bsd3, development, program ] [ Propose Tags ]

Move a git branch to a specified refspec (or to the upstream position) Along with any uncommited changes. Foregoing any committed changes. Meant to be a safer replacement for `reset --hard` to jump branch tips.

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS],,,
Dependencies base (>=4 && <5), base-compat (>=0.8 && <0.9), process (>= [details]
License BSD-3-Clause
Copyright Eyal Lotem
Author Eyal Lotem
Category Development
Home page
Source repo head: git clone
Uploaded by EyalLotem at 2015-11-22T10:10:23Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables git-jump
Downloads 2655 total (13 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
Last success reported on 2016-11-30 [all 4 reports]

Readme for git-jump-

[back to package description]


Moving to a new position

When you decide that the current branch needs to use a different hash and content, currently you need to reset --hard to the new position.

However, reset --hard has the annoying side-effect of deleting any outstanding work.

It would be nice to be able to jump the tip of the current branch to a new position and update the working tree, as long as there's no overlap between files changed in the working tree and in the diff to the remote location.

Just type:

git-jump <refspec>

To jump to the new location.

Updating a local tracking branch with no local commits

When you have a local branch that is tracking a remote branch (and has no local commits) that was rebased, you would have to reset --hard to the remote location. This requires typing out the name of the upstream branch (or "@{u}" at least), and as usual, loses any uncommitted changes.

Just type:


With no parameters, and it will jump to the upstream location, taking any uncommitted changes on top.