*** Git *** For hosting see :doc:`/admin/gitolite` and `Gitlab `__. Bisect ====== Simple, auto:: git bisect start BAD_COMMIT GOOD_COMMIT git bisect run test_runner tests/ Reset Local Master Branch to State of Remote Master =================================================== :: git checkout master git branch failmaster git reset --hard origin/master Explanation: 1. go to master branch 2. (optional) save it as "failmaster" and go there (we need to go somewhere else than master for the next step) 3. reset to origin/master, ignoring all local changes Push all branches from one remote to another ============================================ To push all branches present in the remote ``origin`` to the new remote ``serv``:: source=origin destination=serv git push $destination +refs/remotes/$source/*:refs/heads/* Source: http://stackoverflow.com/a/16044860/241240 Log with Author Date ==================== By default git shows the "commit" date. When rebasing a branch all commit dates are a few seconds old even if they were *authored* months ago. Here are my short log entries - one with relative dates and another with ISO dates, e.g. ``2014-06-04 15:11:47``. .. code-block:: ini [alias] # http://coderwall.com/p/euwpig?i=3&p=1&t=git l = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%ar) %C(bold white)<%an>%Creset' --abbrev-commit # hack to remove timestamp offset http://stackoverflow.com/questions/7853332/git-log-date-formats lf = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%ai%x08%x08%x08%x08%x08%x08) %C(bold white)<%an>%Creset' --abbrev-commit