mirror of
https://github.com/tj/git-extras.git
synced 2026-09-10 15:36:21 -04:00
* feat: add reverse option to git-brv When there are a large amount of branches it is often useful to see the most recent branches last as they end up closer to the prompt. This adds a new --reverse / -r option and an environment variable to set the default behavior (GIT_BRV_REVERSE). * git-brv: change to git option instead of environment variable and fix typo * wrap git option in backticks for git-brv and fix git-feature title * update git-feature docs * fix missing breaks in git-feature.md
208 lines
9.6 KiB
HTML
208 lines
9.6 KiB
HTML
<!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-feature(1) - Create/Merge feature 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="#GIT-CONFIG">GIT CONFIG</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-feature(1)</li>
|
|
<li class='tc'>Git Extras</li>
|
|
<li class='tr'>git-feature(1)</li>
|
|
</ol>
|
|
|
|
<h2 id="NAME">NAME</h2>
|
|
<p class="man-name">
|
|
<code>git-feature</code> - <span class="man-whatis">Create/Merge feature branch</span>
|
|
</p>
|
|
|
|
<h2 id="SYNOPSIS">SYNOPSIS</h2>
|
|
|
|
<p><code>git-feature</code> [-a|--alias <var>PREFIX</var>] [-s|--separator <var>SEPARATOR</var>] [-r|--remote [REMOTE_NAME]] [--from START_POINT] <var>NAME</var>...</p>
|
|
|
|
<p><code>git-feature</code> [-a|--alias <var>PREFIX</var>] [-s|--separator <var>SEPARATOR</var>] finish [--squash] <var>NAME</var>...</p>
|
|
|
|
<h2 id="DESCRIPTION">DESCRIPTION</h2>
|
|
|
|
<p>Create or merge the given feature branch. The feature branch name is made from the <var>PREFIX</var>, the <var>SEPARATOR</var>, and the <var>NAME</var> joined together.</p>
|
|
|
|
<p>The default <var>PREFIX</var> is <code>feature</code> and <var>SEPARATOR</var> is <code>/</code>, which can be changed (see OPTIONS and GIT CONFIG for details).</p>
|
|
|
|
<p>The branch <var>NAME</var> may be specified as multiple words which will be joined with <code>-</code>. If the branch name contains the word <code>finish</code> or is another OPTION, <code>--</code> should be passed to stop OPTION parsing. See the EXAMPLES for details.</p>
|
|
|
|
<h2 id="OPTIONS">OPTIONS</h2>
|
|
|
|
<dl>
|
|
<dt><code>-a</code> <var>PREFIX</var>, <code>--alias</code> <var>PREFIX</var>:</dt><dd><p></p>
|
|
|
|
<p>The branch prefix to use, or <code>feature</code> if not supplied.</p></dd>
|
|
<dt><code>-s</code> <var>SEPARATOR</var>, <code>--separator</code> <var>SEPARATOR</var>:</dt><dd><p></p>
|
|
|
|
<p>The separator to use for joining the branch prefix and the branch name, or <code>/</code> if not supplied.</p></dd>
|
|
<dt><code>-r</code> [REMOTE_NAME], <code>--remote</code> [REMOTE_NAME]:</dt><dd><p></p>
|
|
|
|
<p>Setup a remote tracking branch using <code>remote_name</code>. If <code>remote_name</code> is not supplied, use <code>origin</code> by default.</p></dd>
|
|
<dt><code>--from</code> START_POINT:</dt><dd><p></p>
|
|
|
|
<p>Setup a start point when the branch created. If <code>--from</code> is not supplied, use the current branch by default. This option will be ignored when <code>finish</code>ing a branch.</p></dd>
|
|
<dt class="flush"><code>finish</code>:</dt><dd><p></p>
|
|
|
|
<p>Merge and delete the feature branch.</p></dd>
|
|
<dt><code>--squash</code>:</dt><dd><p></p>
|
|
|
|
<p>Run a squash merge when <code>finish</code>ing the feature branch.</p></dd>
|
|
<dt class="flush"><var>NAME</var>:</dt><dd><p></p>
|
|
|
|
<p>The name of the feature branch.</p></dd>
|
|
</dl>
|
|
|
|
|
|
<h2 id="GIT-CONFIG">GIT CONFIG</h2>
|
|
|
|
<p>You can configure the default branch prefix and separator via git config options.</p>
|
|
|
|
<dl>
|
|
<dt><code>git-extras.feature.prefix</code>:</dt><dd><p></p>
|
|
|
|
<p> $ git config --global add git-extras.feature.prefix "prefix"</p></dd>
|
|
<dt><code>git-extras.feature.separator</code>:</dt><dd><p></p>
|
|
|
|
<p> $ git config --global add git-extras.feature.separator "-"</p></dd>
|
|
</dl>
|
|
|
|
|
|
<h2 id="EXAMPLES">EXAMPLES</h2>
|
|
|
|
<dl>
|
|
<dt>Start a new feature:</dt><dd><p></p>
|
|
|
|
<p>$ git feature dependencies<br />
|
|
...<br />
|
|
$ (feature/dependencies) git commit -m "Some changes"</p></dd>
|
|
<dt>Finish a feature with --no-ff merge:</dt><dd><p></p>
|
|
|
|
<p>$ (feature/dependencies) git checkout master<br />
|
|
$ git feature finish dependencies</p></dd>
|
|
<dt>Finish a feature with --squash merge:</dt><dd><p></p>
|
|
|
|
<p>$ (feature/dependencies) git checkout master<br />
|
|
$ git feature finish --squash dependencies</p></dd>
|
|
<dt>Publish a feature upstream:</dt><dd><p></p>
|
|
|
|
<p>$ git feature dependencies -r upstream</p></dd>
|
|
<dt>Use custom branch prefix:</dt><dd><p></p>
|
|
|
|
<p>$ git alias features "feature -a features"<br />
|
|
$ git features dependencies<br />
|
|
$ (features/dependencies) ...<br />
|
|
$ (features/dependencies) git checkout master<br />
|
|
$ git features finish dependencies</p></dd>
|
|
<dt>Use custom branch separator:</dt><dd><p></p>
|
|
|
|
<p>$ git feature -s - dependencies<br />
|
|
$ (feature-dependencies) ...<br />
|
|
$ (feature-dependencies) git checkout master<br />
|
|
$ git feature -s - finish dependencies</p></dd>
|
|
<dt>Use custom branch prefix and separator from git config with multiple words:</dt><dd><p></p>
|
|
|
|
<p>$ git config --global --add git-extras.feature.prefix "features"<br />
|
|
$ git config --global --add git-extras.feature.separator "."<br />
|
|
$ git feature dependency tracking<br />
|
|
$ (features.dependency-tracking) ...<br />
|
|
$ (features.dependency-tracking) git checkout master<br />
|
|
$ git feature finish dependency tracking</p></dd>
|
|
<dt>Use a <code>git-feature</code> option or the <code>finish</code> command as part of a branch name:</dt><dd><p></p>
|
|
|
|
<p>$ git feature -- finish remote<br />
|
|
...<br />
|
|
$ (feature/finish-remote) git commit -m "Some changes"<br />
|
|
$ (feature/finish-remote) git checkout main<br />
|
|
$ git feature finish -- finish remote</p></dd>
|
|
</dl>
|
|
|
|
|
|
<h2 id="AUTHOR">AUTHOR</h2>
|
|
|
|
<p>Written by Jesús Espino <<a href="mailto:jespinog@gmail.com" data-bare-link="true">jespinog@gmail.com</a>><br />
|
|
Modified by Mark Pitman <<a href="mailto:mark.pitman@gmail.com" data-bare-link="true">mark.pitman@gmail.com</a>><br />
|
|
Modified by Carlos Prado <<a href="mailto:carlos.prado@cpradog.com" data-bare-link="true">carlos.prado@cpradog.com</a>><br />
|
|
Modified by Austin Ziegler <<a href="mailto:halostatue@gmail.com" data-bare-link="true">halostatue@gmail.com</a>></p>
|
|
|
|
<h2 id="REPORTING-BUGS">REPORTING BUGS</h2>
|
|
|
|
<p><<a href="https://github.com/tj/git-extras/issues" data-bare-link="true">https://github.com/tj/git-extras/issues</a>></p>
|
|
|
|
<h2 id="SEE-ALSO">SEE ALSO</h2>
|
|
|
|
<p><<a href="https://github.com/tj/git-extras" data-bare-link="true">https://github.com/tj/git-extras</a>>, <a class="man-ref" href="git-create-branch.html">git-create-branch<span class="s">(1)</span></a>, <a class="man-ref" href="git-delete-branch.html">git-delete-branch<span class="s">(1)</span></a></p>
|
|
|
|
|
|
<ol class='man-decor man-foot man foot'>
|
|
<li class='tl'></li>
|
|
<li class='tc'>December 2023</li>
|
|
<li class='tr'>git-feature(1)</li>
|
|
</ol>
|
|
|
|
</div>
|
|
</body>
|
|
</html>
|