Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Loading…

adding git-missing command #63

Merged
merged 2 commits into from

3 participants

@justone

No description provided.

@tj
Owner
tj commented

somehow missed this one, looks good just needs a rebase

@justone

Oops. Sorry about that, I must have missed the notification a couple months ago.

I rebased it onto master.

@hemanth
Collaborator

:+1:

@hemanth hemanth merged commit 1a6cbf2 into from
@justone

Sweet! Thanks. (-:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on Jul 5, 2013
  1. @justone

    adding git-missing command

    justone authored
  2. @justone
This page is out of date. Refresh to see the latest.
View
11 Readme.md
@@ -66,6 +66,7 @@ $ brew install git-extras
- `git promote`
- `git local-commits`
- `git archive-file`
+ - `git missing`
## git-extras
@@ -529,3 +530,13 @@ List all commits on the local branch that have not yet been sent to origin. Any
## git-archive-file
Creates an zip archive of the current git repository. The name of the archive will depend on the current HEAD of your git respository.
+
+## git-missing [branch1] branch2
+
+Print out which commits are on one branch or the other but not both.
+
+```bash
+$ git missing master
+< d14b8f0 only on current checked out branch
+> 97ef387 only on master
+```
View
21 bin/git-missing
@@ -0,0 +1,21 @@
+#!/bin/sh
+
+# grab first two non-option arguments
+for arg in $*; do
+ if [[ $arg != -* ]]; then
+ test -z "$firstbranch" && firstbranch=$arg && continue
+ test -z "$secondbranch" && secondbranch=$arg && continue
+ else
+ # add anything else to a passthrough
+ passthrough="$passthrough $arg"
+ fi
+done
+
+test -z "$firstbranch" && echo "at least one branch required" && exit 1
+
+if test -z "$secondbranch"; then
+ secondbranch=$firstbranch
+ firstbranch=
+fi
+
+git log $passthrough $firstbranch...$secondbranch --format="%m %h %s" --left-right
View
70 man/git-missing.1
@@ -0,0 +1,70 @@
+.\" generated with Ronn/v0.7.3
+.\" http://github.com/rtomayko/ronn/tree/0.7.3
+.
+.TH "GIT\-MISSING" "1" "March 2012" "" "Git Extras"
+.
+.SH "NAME"
+\fBgit\-missing\fR \- Show commits missing from another branch
+.
+.SH "SYNOPSIS"
+\fBgit\-missing\fR [<first branch>] <second branch> [<git log options>]
+.
+.SH "DESCRIPTION"
+Shows commits that are in either of two branches but not both\. Useful for seeing what would come across in a merge or push\.
+.
+.SH "OPTIONS"
+[<first branch>]
+.
+.P
+First branch to compare\. If not specified, defaults to currently checked out branch\.
+.
+.P
+<second branch>
+.
+.P
+Second branch to compare\.
+.
+.P
+[<git log options>]
+.
+.P
+Any flags that should be passed to \'git log\', such as \-\-no\-merges\.
+.
+.SH "EXAMPLES"
+Show commits on either my current branch or master but not both:
+.
+.IP "" 4
+.
+.nf
+
+$ git missing master
+< d14b8f0 only on current checked out branch
+> 97ef387 only on master
+.
+.fi
+.
+.IP "" 0
+.
+.P
+Show commits on either branch foo or branch bar but not both:
+.
+.IP "" 4
+.
+.nf
+
+$ git missing foo bar
+< b8f0d14 only on foo
+> f38797e only on bar
+.
+.fi
+.
+.IP "" 0
+.
+.SH "AUTHOR"
+Written by Nate Jones <\fInate@endot\.org\fR>
+.
+.SH "REPORTING BUGS"
+<\fIhttp://github\.com/visionmedia/git\-extras/issues\fR>
+.
+.SH "SEE ALSO"
+<\fIhttp://github\.com/visionmedia/git\-extras\fR>
View
137 man/git-missing.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html>
+<html>
+<head>
+ <meta http-equiv='content-type' value='text/html;charset=utf8'>
+ <meta name='generator' value='Ronn/v0.7.3 (http://github.com/rtomayko/ronn/tree/0.7.3)'>
+ <title>git-missing(1) - Show commits missing from another branch</title>
+ <style type='text/css' media='all'>
+ /* style: man */
+ body#manpage {margin:0}
+ .mp {max-width:100ex;padding:0 9ex 1ex 4ex}
+ .mp p,.mp pre,.mp ul,.mp ol,.mp dl {margin:0 0 20px 0}
+ .mp h2 {margin:10px 0 0 0}
+ .mp > p,.mp > pre,.mp > ul,.mp > ol,.mp > dl {margin-left:8ex}
+ .mp h3 {margin:0 0 0 4ex}
+ .mp dt {margin:0;clear:left}
+ .mp dt.flush {float:left;width:8ex}
+ .mp dd {margin:0 0 0 9ex}
+ .mp h1,.mp h2,.mp h3,.mp h4 {clear:left}
+ .mp pre {margin-bottom:20px}
+ .mp pre+h2,.mp pre+h3 {margin-top:22px}
+ .mp h2+pre,.mp h3+pre {margin-top:5px}
+ .mp img {display:block;margin:auto}
+ .mp h1.man-title {display:none}
+ .mp,.mp code,.mp pre,.mp tt,.mp kbd,.mp samp,.mp h3,.mp h4 {font-family:monospace;font-size:14px;line-height:1.42857142857143}
+ .mp h2 {font-size:16px;line-height:1.25}
+ .mp h1 {font-size:20px;line-height:2}
+ .mp {text-align:justify;background:#fff}
+ .mp,.mp code,.mp pre,.mp pre code,.mp tt,.mp kbd,.mp samp {color:#131211}
+ .mp h1,.mp h2,.mp h3,.mp h4 {color:#030201}
+ .mp u {text-decoration:underline}
+ .mp code,.mp strong,.mp b {font-weight:bold;color:#131211}
+ .mp em,.mp var {font-style:italic;color:#232221;text-decoration:none}
+ .mp a,.mp a:link,.mp a:hover,.mp a code,.mp a pre,.mp a tt,.mp a kbd,.mp a samp {color:#0000ff}
+ .mp b.man-ref {font-weight:normal;color:#434241}
+ .mp pre {padding:0 4ex}
+ .mp pre code {font-weight:normal;color:#434241}
+ .mp h2+pre,h3+pre {padding-left:0}
+ ol.man-decor,ol.man-decor li {margin:3px 0 10px 0;padding:0;float:left;width:33%;list-style-type:none;text-transform:uppercase;color:#999;letter-spacing:1px}
+ ol.man-decor {width:100%}
+ ol.man-decor li.tl {text-align:left}
+ ol.man-decor li.tc {text-align:center;letter-spacing:4px}
+ ol.man-decor li.tr {text-align:right;float:right}
+ </style>
+</head>
+<!--
+ The following styles are deprecated and will be removed at some point:
+ div#man, div#man ol.man, div#man ol.head, div#man ol.man.
+
+ The .man-page, .man-decor, .man-head, .man-foot, .man-title, and
+ .man-navigation should be used instead.
+-->
+<body id='manpage'>
+ <div class='mp' id='man'>
+
+ <div class='man-navigation' style='display:none'>
+ <a href="#NAME">NAME</a>
+ <a href="#SYNOPSIS">SYNOPSIS</a>
+ <a href="#DESCRIPTION">DESCRIPTION</a>
+ <a href="#OPTIONS">OPTIONS</a>
+ <a href="#EXAMPLES">EXAMPLES</a>
+ <a href="#AUTHOR">AUTHOR</a>
+ <a href="#REPORTING-BUGS">REPORTING BUGS</a>
+ <a href="#SEE-ALSO">SEE ALSO</a>
+ </div>
+
+ <ol class='man-decor man-head man head'>
+ <li class='tl'>git-missing(1)</li>
+ <li class='tc'>Git Extras</li>
+ <li class='tr'>git-missing(1)</li>
+ </ol>
+
+ <h2 id="NAME">NAME</h2>
+<p class="man-name">
+ <code>git-missing</code> - <span class="man-whatis">Show commits missing from another branch</span>
+</p>
+
+<h2 id="SYNOPSIS">SYNOPSIS</h2>
+
+<p><code>git-missing</code> [&lt;first branch&gt;] &lt;second branch&gt; [&lt;git log options&gt;]</p>
+
+<h2 id="DESCRIPTION">DESCRIPTION</h2>
+
+<p> Shows commits that are in either of two branches but not both. Useful for
+ seeing what would come across in a merge or push.</p>
+
+<h2 id="OPTIONS">OPTIONS</h2>
+
+<p> [&lt;first branch&gt;]</p>
+
+<p> First branch to compare. If not specified, defaults to currently checked out branch.</p>
+
+<p> &lt;second branch&gt;</p>
+
+<p> Second branch to compare.</p>
+
+<p> [&lt;git log options&gt;]</p>
+
+<p> Any flags that should be passed to 'git log', such as --no-merges.</p>
+
+<h2 id="EXAMPLES">EXAMPLES</h2>
+
+<p> Show commits on either my current branch or master but not both:</p>
+
+<pre><code>$ git missing master
+&lt; d14b8f0 only on current checked out branch
+> 97ef387 only on master
+</code></pre>
+
+<p> Show commits on either branch foo or branch bar but not both:</p>
+
+<pre><code>$ git missing foo bar
+&lt; b8f0d14 only on foo
+> f38797e only on bar
+</code></pre>
+
+<h2 id="AUTHOR">AUTHOR</h2>
+
+<p>Written by Nate Jones &lt;<a href="&#x6d;&#x61;&#x69;&#x6c;&#x74;&#111;&#x3a;&#110;&#97;&#x74;&#x65;&#x40;&#101;&#110;&#100;&#111;&#x74;&#46;&#x6f;&#114;&#x67;" data-bare-link="true">&#x6e;&#x61;&#116;&#101;&#x40;&#101;&#110;&#100;&#111;&#x74;&#x2e;&#x6f;&#114;&#103;</a>&gt;</p>
+
+<h2 id="REPORTING-BUGS">REPORTING BUGS</h2>
+
+<p>&lt;<a href="http://github.com/visionmedia/git-extras/issues" data-bare-link="true">http://github.com/visionmedia/git-extras/issues</a>&gt;</p>
+
+<h2 id="SEE-ALSO">SEE ALSO</h2>
+
+<p>&lt;<a href="http://github.com/visionmedia/git-extras" data-bare-link="true">http://github.com/visionmedia/git-extras</a>&gt;</p>
+
+
+ <ol class='man-decor man-foot man foot'>
+ <li class='tl'></li>
+ <li class='tc'>March 2012</li>
+ <li class='tr'>git-missing(1)</li>
+ </ol>
+
+ </div>
+</body>
+</html>
View
51 man/git-missing.md
@@ -0,0 +1,51 @@
+git-missing(1) -- Show commits missing from another branch
+=========================================================
+
+## SYNOPSIS
+
+`git-missing` [&lt;first branch&gt;] &lt;second branch&gt; [&lt;git log options&gt;]
+
+## DESCRIPTION
+
+ Shows commits that are in either of two branches but not both. Useful for
+ seeing what would come across in a merge or push.
+
+## OPTIONS
+
+ [&lt;first branch&gt;]
+
+ First branch to compare. If not specified, defaults to currently checked out branch.
+
+ &lt;second branch&gt;
+
+ Second branch to compare.
+
+ [&lt;git log options&gt;]
+
+ Any flags that should be passed to 'git log', such as --no-merges.
+
+## EXAMPLES
+
+ Show commits on either my current branch or master but not both:
+
+ $ git missing master
+ < d14b8f0 only on current checked out branch
+ > 97ef387 only on master
+
+ Show commits on either branch foo or branch bar but not both:
+
+ $ git missing foo bar
+ < b8f0d14 only on foo
+ > f38797e only on bar
+
+## AUTHOR
+
+Written by Nate Jones &lt;<nate@endot.org>&gt;
+
+## REPORTING BUGS
+
+&lt;<http://github.com/visionmedia/git-extras/issues>&gt;
+
+## SEE ALSO
+
+&lt;<http://github.com/visionmedia/git-extras>&gt;
Something went wrong with that request. Please try again.