Sophie

Sophie

distrib > Mageia > 7 > armv7hl > media > core-updates > by-pkgid > 67810d03ada515381702f7b70888f800 > files > 522

tortoisehg-4.9.1-1.mga7.noarch.rpm


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="X-UA-Compatible" content="IE=Edge" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>3. What’s New &#8212; TortoiseHg 4.7.0 documentation</title>
    <link rel="stylesheet" href="_static/tortoisehg.css" type="text/css" />
    <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
    <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
    <script type="text/javascript" src="_static/jquery.js"></script>
    <script type="text/javascript" src="_static/underscore.js"></script>
    <script type="text/javascript" src="_static/doctools.js"></script>
    <script type="text/javascript" src="_static/language_data.js"></script>
    <link rel="index" title="Index" href="genindex.html" />
    <link rel="search" title="Search" href="search.html" />
    <link rel="next" title="4. A Quick Start Guide to TortoiseHg" href="quick.html" />
    <link rel="prev" title="2. Introduction" href="intro.html" />
   
  <link rel="stylesheet" href="_static/custom.css" type="text/css" />
  
  
  <meta name="viewport" content="width=device-width, initial-scale=0.9, maximum-scale=0.9" />

  </head><body>
  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          

          <div class="body" role="main">
            
  <div class="section" id="module-whatsnew.dialog">
<span id="what-s-new"></span><h1>3. What’s New<a class="headerlink" href="#module-whatsnew.dialog" title="Permalink to this headline">¶</a></h1>
<div class="section" id="tortoisehg-2-0">
<h2>3.1. TortoiseHg 2.0<a class="headerlink" href="#tortoisehg-2-0" title="Permalink to this headline">¶</a></h2>
<div class="section" id="philosophy">
<h3>3.1.1. Philosophy<a class="headerlink" href="#philosophy" title="Permalink to this headline">¶</a></h3>
<p>The following philosophical changes were made between TortoiseHg 1.0 and
TortoiseHg 2.0.</p>
<div class="section" id="workbench">
<h4>3.1.1.1. Workbench<a class="headerlink" href="#workbench" title="Permalink to this headline">¶</a></h4>
<p>We wanted a single ‘TortoiseHg’ application which can access nearly all
TortoiseHg (and Mercurial) functionality and that could be launched by a
desktop or start menu shortcut.  So we developed the Workbench
application.</p>
<p>The Workbench can support multiple repositories open at a time via “Repo
Tabs” across the top of the main window.</p>
<p>Each repository tab supports multiple “Task Tabs” beneath its graph
splitter.  These task tabs are switchable via icons on the side of
the Workbench or via application menus.  Available task tabs include a
changeset browser, a commit tool, a history search widget, and a sync widget.</p>
<p>Also available are two dockable widgets - a <em>Repository Registry</em> which
lists all known repositories on your local machine and an <em>Output Log
Window</em> which displays running command lines and their output and can
also function as a minimal shell.</p>
</div>
<div class="section" id="showing-mercurial-command-lines">
<h4>3.1.1.2. Showing Mercurial command lines<a class="headerlink" href="#showing-mercurial-command-lines" title="Permalink to this headline">¶</a></h4>
<p>In an effort to educate users on Mercurial’s command interface, nearly
all commands are executed in the log window, displaying the full command
line and Mercurial’s output (progress indication is provided by progress
bars inside the Workbench status bar).  The few tools that do not use a
command log window will generally display the command line they execute.</p>
</div>
<div class="section" id="resolve-tool-deliberate-merges">
<h4>3.1.1.3. Resolve tool, deliberate merges<a class="headerlink" href="#resolve-tool-deliberate-merges" title="Permalink to this headline">¶</a></h4>
<p>TortoiseHg 2.0 introduces a resolve dialog for resolving conflicted
file merges.  It shows the users all the files that require resolution
and those files that have been resolved, allowing merges to be verified.</p>
<p>As supported by Mercurial’s resolve command, individual file merges may
be restarted as many times as necessary to get the merge correctly
completed.</p>
<p>By default, TortoiseHg will use the resolve dialog to resolve all
conflicts, including trivial conflicts.  It instructs Mercurial to never
merge files automatically, deferring their resolution until the resolve
dialog can be launched.  This is true for merges, update commands that
require content merges, rebases, and backouts.</p>
</div>
<div class="section" id="shelve-improved">
<h4>3.1.1.4. Shelve Improved<a class="headerlink" href="#shelve-improved" title="Permalink to this headline">¶</a></h4>
<p>TortoiseHg 2.0 includes a new shelve tool which is capable of moving
changes between your working directory, a shelf file, or an unapplied MQ
patch.</p>
</div>
<div class="section" id="revision-sets">
<h4>3.1.1.5. Revision Sets<a class="headerlink" href="#revision-sets" title="Permalink to this headline">¶</a></h4>
<p>We have replaced the filter bar of the Repository Explorer with a
revision set bar in the Workbench.  Revision sets were introduced in
Mercurial 1.6 and have been integrated with an increasing number of
commands in each subsequent release.  They are a powerful query language
for finding and specifying revisions in your repository.</p>
<p>The Workbench also includes a revision set editor which both teaches the
user the available keywords and their arguments, and offers brace
matching, auto-completions, and other editing amenities.</p>
<p>In TortoiseHg 2.0, incoming and outgoing changesets are visualized as
revision sets.  In previous versions they were represented by graph
annotations.</p>
</div>
</div>
<div class="section" id="technology">
<h3>3.1.2. Technology<a class="headerlink" href="#technology" title="Permalink to this headline">¶</a></h3>
<div class="section" id="qt-and-pyqt">
<h4>3.1.2.1. Qt and PyQt<a class="headerlink" href="#qt-and-pyqt" title="Permalink to this headline">¶</a></h4>
<p>TortoiseHg 2.0 has been a near rewrite of all of the tools and dialogs
taking advantage of Digia’s excellent <a class="reference external" href="https://www.qt.io/">Qt</a>
UI framework and Riverbank Computing’s fine
<a class="reference external" href="https://www.riverbankcomputing.com/software/pyqt/intro">PyQt</a> Python
bindings.</p>
</div>
<div class="section" id="qscintilla2">
<h4>3.1.2.2. QScintilla2<a class="headerlink" href="#qscintilla2" title="Permalink to this headline">¶</a></h4>
<p>TortoiseHg uses the <a class="reference external" href="http://pyqt.sourceforge.net/Docs/QScintilla2/">QScintilla2</a>
editing component extensively to:</p>
<ul class="simple">
<li>display file contents and diffs with syntax highlighting</li>
<li>display annotations with syntax highlighting</li>
<li>edit commit messages with auto-completion of filenames and source symbols</li>
<li>edit revision set strings with brace matching and auto-completion</li>
</ul>
<p>One can configure the QScintilla2 tab stop parameter using the settings
tool, while white space visibility and wrap are controlled by context
menus.</p>
</div>
<div class="section" id="polling-of-repository-state-and-config">
<h4>3.1.2.3. Polling of repository state and config<a class="headerlink" href="#polling-of-repository-state-and-config" title="Permalink to this headline">¶</a></h4>
<p>The Workbench and other applications like the commit tool will poll
repositories on your local machine to detect changes made to either the
repository or their configuration files, and automatically update
running applications as necessary.  Nearly all configuration changes are
effective immediately, with the notable exception of enabling or
disabling Mercurial extensions.  Changes to extension configuration
generally require application restarts before they take effect.</p>
</div>
<div class="section" id="immediate-bug-report-dialogs">
<h4>3.1.2.4. Immediate bug report dialogs<a class="headerlink" href="#immediate-bug-report-dialogs" title="Permalink to this headline">¶</a></h4>
<p>Prior to TortoiseHg 2.0, bug reports were written to stderr as they
occured and stderr was captured and scanned at exit to report those
errors to the user.  While we gained many valuable bug reports via this
mechanism, there was rarely any context on what operations caused these
bugs.</p>
<p>In TortoiseHg 2.0, we have created a generic exception handler that
catches all Python exceptions that are otherwise unhandled by
application code.  This allows us to display exception tracebacks almost
immediately after they occur (after a short timeout to collect
consecutive exceptions together).  The hope is that future bug reports
will contain better reproduction instructions, or at least context for
the tracebacks.</p>
</div>
<div class="section" id="demand-loaded-graph">
<h4>3.1.2.5. Demand loaded graph<a class="headerlink" href="#demand-loaded-graph" title="Permalink to this headline">¶</a></h4>
<p>To keep refreshes as efficient as possible, the graphing algorithm will
only load a couple hundred revisions initially during a refresh, and
then load further revisions only when those revisions are required to be
displayed.  You will notice scrolling through the graph is jerky, these
are bulk loads of revisions into the graph.  To avoid this jerkiness you
can force TortoiseHg to load all revisions in the graph via the
<span class="guilabel">Load all revisions</span> option from the <span class="guilabel">View</span> menu.</p>
</div>
</div>
</div>
</div>


          </div>
          
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="index.html">
              <img class="logo" src="_static/thg_logo_92x50.png" alt="Logo"/>
            </a></p>
<h1 class="logo"><a href="index.html">TortoiseHg</a></h1>








<h3>Navigation</h3>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="preface.html">1. Preface</a></li>
<li class="toctree-l1"><a class="reference internal" href="intro.html">2. Introduction</a></li>
<li class="toctree-l1 current"><a class="current reference internal" href="#">3. What’s New</a><ul>
<li class="toctree-l2"><a class="reference internal" href="#tortoisehg-2-0">3.1. TortoiseHg 2.0</a><ul>
<li class="toctree-l3"><a class="reference internal" href="#philosophy">3.1.1. Philosophy</a></li>
<li class="toctree-l3"><a class="reference internal" href="#technology">3.1.2. Technology</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="quick.html">4. A Quick Start Guide to TortoiseHg</a></li>
<li class="toctree-l1"><a class="reference internal" href="daily.html">5. TortoiseHg in daily use</a></li>
<li class="toctree-l1"><a class="reference internal" href="settings.html">6. Settings</a></li>
<li class="toctree-l1"><a class="reference internal" href="patches.html">7. Patches</a></li>
<li class="toctree-l1"><a class="reference internal" href="extensions.html">8. Extensions</a></li>
<li class="toctree-l1"><a class="reference internal" href="nonhg.html">9. Use with other VCS systems</a></li>
<li class="toctree-l1"><a class="reference internal" href="faq.html">10. Frequently Asked Questions</a></li>
<li class="toctree-l1"><a class="reference internal" href="debugging.html">11. Debugging</a></li>
</ul>

<div class="relations">
<h3>Related Topics</h3>
<ul>
  <li><a href="index.html">Documentation overview</a><ul>
      <li>Previous: <a href="intro.html" title="previous chapter">2. Introduction</a></li>
      <li>Next: <a href="quick.html" title="next chapter">4. A Quick Start Guide to TortoiseHg</a></li>
  </ul></li>
</ul>
</div>
<div id="searchbox" style="display: none" role="search">
  <h3>Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    </div>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>








        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="footer">
      &copy;2010-2019, Steve Borho and others.
      
      |
      Powered by <a href="http://sphinx-doc.org/">Sphinx 1.8.4</a>
      &amp; <a href="https://github.com/bitprophet/alabaster">Alabaster 0.7.12</a>
      
      |
      <a href="_sources/whatsnew.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>