Index: docs/html/git-rebase-update.html |
diff --git a/docs/html/git-map.html b/docs/html/git-rebase-update.html |
similarity index 73% |
copy from docs/html/git-map.html |
copy to docs/html/git-rebase-update.html |
index 828e1c057695e35234afcc7f22298417c620a40e..9ec57306258b7e87ca2ffe05a7a8099c1de87baa 100644 |
--- a/docs/html/git-map.html |
+++ b/docs/html/git-rebase-update.html |
@@ -4,7 +4,7 @@ |
<head> |
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" /> |
<meta name="generator" content="AsciiDoc 8.6.9" /> |
-<title>git-map(1)</title> |
+<title>git-rebase-update(1)</title> |
<style type="text/css"> |
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */ |
@@ -741,12 +741,12 @@ asciidoc.install(); |
<body class="manpage"> |
<div id="header"> |
<h1> |
-git-map(1) Manual Page |
+git-rebase-update(1) Manual Page |
</h1> |
<h2>NAME</h2> |
<div class="sectionbody"> |
-<p>git-map - |
- Display history of all branches in a colorized terminal format. |
+<p>git-rebase-update - |
+ Updates all branches to have the latest changes from their upstreams. |
</p> |
</div> |
</div> |
@@ -755,7 +755,7 @@ git-map(1) Manual Page |
<h2 id="_synopsis">SYNOPSIS</h2> |
<div class="sectionbody"> |
<div class="verseblock"> |
-<pre class="content"><em>git map</em> [<extra_args>…]</pre> |
+<pre class="content"><em>git rebase-update</em> [-v | --verbose] [-n | --no_fetch]</pre> |
<div class="attribution"> |
</div></div> |
</div> |
@@ -763,36 +763,77 @@ git-map(1) Manual Page |
<div class="sect1"> |
<h2 id="_description">DESCRIPTION</h2> |
<div class="sectionbody"> |
-<div class="paragraph"><p>Git map formats the output of <code>git log --graph</code> from all refs such that:</p></div> |
-<div class="ulist"><ul> |
-<li> |
+<div class="paragraph"><p>Brings all branches up-to-date with their tracking branches. This involves |
+several phases:</p></div> |
+<div class="dlist"><dl> |
+<dt class="hdlist1"> |
+Preparation |
+</dt> |
+<dd> |
<p> |
-Current branch is <span class="aqua">cyan</span>. |
+ If you currently have a branch checked out, any changes on that branch are |
+ <em>frozen</em> (See <a href="git-freeze.html">git-freeze(1)</a> for more detail). Additionally, the current |
+ branch is recorded for the <em>Restoration</em> phase later (see <em>CONFIGURATION |
+ VARIABLES</em> for details on <code>depot-tools.rebase-update.starting-branch</code>). |
</p> |
-</li> |
-<li> |
+</dd> |
+<dt class="hdlist1"> |
+Fetching |
+</dt> |
+<dd> |
<p> |
-Local branches are <span class="green">green</span>. |
+ All branches are examined to find their upstream references. The correct set |
+ of git remotes is determined, and fetched accordingly. Note that if any |
+ branches have a tag as their upstream, we are forced to pull all remotes. |
</p> |
-</li> |
-<li> |
+<div class="paragraph"><p>Pass <code>--no_fetch</code> to skip this phase.</p></div> |
+</dd> |
+<dt class="hdlist1"> |
+Rebasing |
+</dt> |
+<dd> |
<p> |
-Remote branches are <span class="red">red</span>. |
+ All branches are rebased in topological order from roots (upstreams) to |
+ leaves. Each branch is rebased from its marked merge-base (see <em>CONFIGURATION |
+ VARIABLES</em>) to the branch tip on top of its parent branch. If the parent |
+ branch is <em>frozen</em> (see <a href="git-freeze.html">git-freeze(1)</a>), the branch will be rebased |
+ onto the last non-freeze commit on the parent branch. |
</p> |
-</li> |
-<li> |
+<div class="paragraph"><p>Things get interesting when there are merge conflicts on rebase. The <strong>most |
+common</strong> cause for conflicts is when your branch has been committed to the |
+upstream in squashed form, ala <a href="git-squash-branch.html">git-squash-branch(1)</a>, which is what |
+<a href="git-cl.html">git-cl(1)</a> and the <em>Commit Queue</em> will do. Because of that, <code>git |
+rebase-update</code> will attempt to squash your conflicted branch to see if the |
+squashed version applies cleanly to its upstream.</p></div> |
+<div class="paragraph"><p>If it does not apply cleanly, then your original (non-squashed) branch will be |
+left in mid-rebase and <code>git rebase-update</code> will exit. You can deal with this |
+like any other conflicted rebase. When you’re done, just <code>git rebase-update</code> |
+again to pick up where you left off.</p></div> |
+</dd> |
+<dt class="hdlist1"> |
+Cleanup |
+</dt> |
+<dd> |
<p> |
-Tags are <span class="fuchsia">magenta</span>. |
+ Once all the branches have been rebased, any empty branches (i.e. branches |
+ with no commits on them) are removed. If a branch is removed in this fashion, |
+ any branches which depend on it are reparented to the parent of the removed |
+ branch (see <a href="git-reparent-branch.html">git-reparent-branch(1)</a>). |
</p> |
-</li> |
-<li> |
+</dd> |
+<dt class="hdlist1"> |
+Restoration |
+</dt> |
+<dd> |
<p> |
-The currently checked out commit is highlighted with a <span class="yellow blue-background">blue background</span>. |
+ <code>git rebase-update</code> checks out the branch that you started on, and <em>thaws</em> it, |
+ if necessary (see <a href="git-thaw.html">git-thaw(1)</a>). If the branch you started on got |
+ cleaned up, <code>git rebase-update</code> will checkout the <em>root</em> ref (defaults to |
+ <em>origin/master</em>, as configured by <code>depot-tools.upstream</code>, see |
+ <a href="git-new-branch.html">git-new-branch(1)</a>). |
</p> |
-</li> |
-</ul></div> |
-<div class="paragraph"><p>The output is automatically piped through the <code>less</code> pager command, even on |
-windows.</p></div> |
+</dd> |
+</dl></div> |
</div> |
</div> |
<div class="sect1"> |
@@ -800,16 +841,26 @@ windows.</p></div> |
<div class="sectionbody"> |
<div class="dlist"><dl> |
<dt class="hdlist1"> |
-<extra_args>… |
+-n |
+</dt> |
+<dt class="hdlist1"> |
+--no_fetch |
+</dt> |
+<dd> |
+<p> |
+ Skip the <code>git fetch</code> phase of rebase-update. |
+</p> |
+</dd> |
+<dt class="hdlist1"> |
+-v |
+</dt> |
+<dt class="hdlist1"> |
+--verbose |
</dt> |
<dd> |
<p> |
- Extra parameters to pass to the internal <a href="git-log.html">git-log(1)</a> invocation. This |
- can be used to restrict what refs <em>git map</em> operates on, etc. |
+ More text than your terminal can handle. |
</p> |
-<div class="paragraph"><p>If you run git map with a series of fixed arguments frequently, you can use |
-the depot_tools.map_extra configuration variable to pre-set arguments (See |
-<code>CONFIGURATION VARIABLES</code>)</p></div> |
</dd> |
</dl></div> |
</div> |
@@ -818,46 +869,53 @@ the depot_tools.map_extra configuration variable to pre-set arguments (See |
<h2 id="_configuration_variables">CONFIGURATION VARIABLES</h2> |
<div class="sectionbody"> |
<div class="sect2"> |
-<h3 id="_depot_tools_map_extra">depot_tools.map_extra</h3> |
-<div class="paragraph"><p>Each value of the <em>depot_tools.map_extra</em> config variable is applied as an |
-additional argument to <code>git log</code> during the execution of git map. If you wish to |
-configure this, use git <code>config --add depot_tools.map_extra <value></code> to do so.</p></div> |
+<h3 id="_depot_tools_rebase_update_starting_branch">depot-tools.rebase-update.starting-branch</h3> |
+<div class="paragraph"><p>When <code>git rebase-update</code> first runs, it will record the current branch here so |
+that when it completes successfully, it will return back to the same branch you |
+started on, even if <code>git rebase-update</code> is interrupted due to rebase conflicts. |
+When <code>git rebase-update</code> completes successfully, this configuration variable is |
+removed.</p></div> |
+</div> |
+<div class="sect2"> |
+<h3 id="_branch_lt_name_gt_dormant">branch.<name>.dormant</h3> |
+<div class="paragraph"><p>If <code>true</code>, will cause rebase-update to skip all processing on the branch. |
+Useful for old/high-conflict branches which you want to keep for posterity, but |
+don’t want to deal with when running <code>git rebase-update</code></p></div> |
+</div> |
+<div class="sect2"> |
+<h3 id="_branch_lt_name_gt_base">branch.<name>.base</h3> |
+<div class="paragraph"><p>Holds the <em>base</em> reference for this branch. By default this is equivalent to |
+<code>git merge-base <name> <name>@{upstream}</code>. However, it can diverge if |
+<code><name>@{upstream}</code> is manually rebased. In this case, it correctly preserves |
+the value it had before, where <code>git merge-base</code> would now report the wrong |
+value.</p></div> |
+<div class="paragraph"><p>All of the tools in the <a href="depot_tools.html">depot_tools(1)</a> suite collude to keep this value |
+as up-to-date as possible, including <a href="git-reparent-branch.html">git-reparent-branch(1)</a>, and |
+<a href="git-new-branch.html">git-new-branch(1)</a>. <a href="git-map.html">git-map(1)</a> also shows the location of these |
+marker values in <strong><span class="black-background white">white</span></strong>.</p></div> |
+<div class="paragraph"><p><a href="git-mark-merge-base.html">git-mark-merge-base(1)</a> allows easy manual interaction for this value, |
+in the unlikely event that it gets out of sync.</p></div> |
</div> |
</div> |
</div> |
<div class="sect1"> |
-<h2 id="_example">EXAMPLE</h2> |
+<h2 id="_suggested_aliases">SUGGESTED ALIASES</h2> |
<div class="sectionbody"> |
-<div class="paragraph"><p>Running <em>git map</em> would result in an output something like:</p></div> |
+<div class="paragraph"><p>Some common short-hand aliases. Feel free to add these to your <em>~/.gitconfig</em> |
+file.</p></div> |
<div class="listingblock"> |
<div class="content"> |
-<pre><code><strong><span class="white">$ git map</span></strong> |
-<span class="white blue-background">*</span>​<strong><span class="blue-background red"> 7dcfe47 </span></strong> <span class="green">(</span>​<strong><span class="aqua">frozen_changes</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-12</span> ~ FREEZE.unindexed |
-* <strong><span class="red">4b0c180</span></strong> <span class="yellow">2014-03-12</span> ~ modfile |
-* <strong><span class="red">59a7cca</span></strong> <span class="yellow">2014-03-12</span> ~ a deleted file |
-* <strong><span class="red">6bec695</span></strong> <span class="green">(</span>​<span class="red">origin/master</span>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ Add neat feature |
-* <strong><span class="red">d15a38a</span></strong> <span class="yellow">2014-03-11</span> ~ Epic README update |
-* <strong><span class="red">d559894</span></strong> <span class="green">(</span>​<strong><span class="lime">master</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ Important upstream change |
-<span class="red">|</span> * <strong><span class="red">9c311fd</span></strong> <span class="green">(</span>​<strong><span class="lime">cool_feature</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ Respond to CL comments |
-<span class="red">|</span> <span class="green">|</span> * <strong><span class="red">2a1eeb2</span></strong> <span class="green">(</span>​<strong><span class="lime">subfeature</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ integrate with CoolService |
-<span class="red">|</span> <span class="green">|</span> * <strong><span class="red">d777af6</span></strong> <span class="yellow">2014-03-11</span> ~ slick commenting action |
-<span class="red">|</span> <span class="green">|/</span> |
-<span class="red">|</span> * <strong><span class="red">265803a</span></strong> <span class="yellow">2014-03-11</span> ~ another improvement |
-<span class="red">|</span> * <strong><span class="red">6d831ac</span></strong> <span class="green">(</span>​<strong><span class="fuchsia">spleen_tag</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ Refactor spleen |
-<span class="red">|</span> * <strong><span class="red">82e74ab</span></strong> <span class="yellow">2014-03-11</span> ~ Add widget |
-<span class="red">|/</span> |
-* <strong><span class="red">d08c5b3</span></strong> <span class="green">(</span>​<strong><span class="lime">bogus_noparent</span></strong>​<span class="green">)</span> <span class="yellow">2014-03-11</span> ~ Wonderful beginnings</code></pre> |
+<pre><code>[alias] |
+ git reup = rebase-update</code></pre> |
</div></div> |
-<div class="paragraph"><p>As you can see, the structure of the commit history is visible, particularly |
-what the parents of each commit are. In order to see the <em>upstream</em> |
-relationships of the branches (i.e. which branch is tracking which other |
-branch), use the <a href="git-map-branches.html">git-map-branches(1)</a> command.</p></div> |
</div> |
</div> |
<div class="sect1"> |
<h2 id="_see_also">SEE ALSO</h2> |
<div class="sectionbody"> |
-<div class="paragraph"><p><a href="git-map-branches.html">git-map-branches(1)</a></p></div> |
+<div class="paragraph"><p><a href="git-new-branch.html">git-new-branch(1)</a>, <a href="git-reparent-branch.html">git-reparent-branch(1)</a>, |
+<a href="git-rename-branch.html">git-rename-branch(1)</a>, <a href="git-upstream-diff.html">git-upstream-diff(1)</a>, |
+<a href="git-freeze.html">git-freeze(1)</a>, <a href="git-mark-merge-base.html">git-mark-merge-base(1)</a></p></div> |
</div> |
</div> |
<div class="sect1"> |
@@ -872,7 +930,7 @@ from <a href="https://chromium.googlesource.com/chromium/tools/depot_tools.git"> |
<div id="footnotes"><hr /></div> |
<div id="footer"> |
<div id="footer-text"> |
-Last updated 2014-03-14 14:01:55 PDT |
+Last updated 2014-03-25 15:09:11 PDT |
</div> |
</div> |
</body> |