<!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="Content-Type" content="text/html; charset=utf-8" /> <title>チェックアウトを再利用する — Bazaar v2.2.4 documentation</title> <link rel="stylesheet" href="../_static/default.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '2.2.4', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </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/translations.js"></script> <link rel="shortcut icon" href="../_static/bzr.ico"/> <link rel="top" title="Bazaar v2.2.4 documentation" href="../index.html" /> <link rel="up" title="Bazaarユーザーガイド" href="index.html" /> <link rel="next" title="分散型の開発" href="distributed_intro.html" /> <link rel="prev" title="オフラインで集中型のブランチに取り組む" href="working_offline_central.html" /> </head> <body> <div class="related"> <h3>ナビゲーション</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="distributed_intro.html" title="分散型の開発" accesskey="N">次へ</a></li> <li class="right" > <a href="working_offline_central.html" title="オフラインで集中型のブランチに取り組む" accesskey="P">前へ</a> |</li> <li><a href="../index.html">目次 (2.2.4)</a> »</li> <li><a href="index.html" accesskey="U">Bazaarユーザーガイド</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="id1"> <h1>チェックアウトを再利用する<a class="headerlink" href="#id1" title="このヘッドラインへのパーマリンク">¶</a></h1> <div class="section" id="id2"> <h2>動機<a class="headerlink" href="#id2" title="このヘッドラインへのパーマリンク">¶</a></h2> <p>時々、複数のブランチに取り組むために単独のチェックアウトをサンドボックスとして持つことは便利です。 挙げられる理由のいくつかは次の内容を含みます:</p> <blockquote> <div><ul class="simple"> <li>作業ツリーが大きいときディスクスペースを節約する</li> <li>固定された位置で開発する</li> </ul> </div></blockquote> <p>多くの場合、作業ツリーのディスクの利用量は <tt class="docutils literal"><span class="pre">.bzr</span></tt> ディレクトリよりも 大きくなります。 複数のブランチに取り組みたいが、それぞれの作業ツリーすべてのオーバーヘッドを許容できない場合、複数のブランチをまたがってチェックアウトを再利用することがうまくゆく方法です。</p> <p>他の機会において、サンドボックスの位置は数多くの開発とテストツールに設定されます。 繰り返しますが、複数のブランチをまたがったチェックアウトの再利用は役に立ちます。</p> </div> <div class="section" id="id3"> <h2>ブランチが結びつけられた場所を変更する<a class="headerlink" href="#id3" title="このヘッドラインへのパーマリンク">¶</a></h2> <p>チェックアウトが結びつけられている場所を変更するためには、次の手順に従います:</p> <blockquote> <div><ol class="arabic simple"> <li>作業内容が失われないようにローカルの変更が中央ブランチにコミット されたことを確認します</li> <li>取り組みたい新しいリモートブランチのURLを渡して <tt class="docutils literal"><span class="pre">bind</span></tt> コマンドを使います</li> <li><tt class="docutils literal"><span class="pre">revert</span></tt> コマンドの後に続いて <tt class="docutils literal"><span class="pre">update</span></tt> コマンドを使用して望むブランチの コピーをチェックアウトします</li> </ol> </div></blockquote> <p>新しいブランチに bind して update するだけだと、コミットしたもの、していないもの両方のローカルの変更がマージされることに注意してください。 <tt class="docutils literal"><span class="pre">revert</span></tt> か <tt class="docutils literal"><span class="pre">commit</span></tt> を使って、それらを維持するか破棄するかを決めなければいけません。</p> <p>bind+update レシピの代わりは <tt class="docutils literal"><span class="pre">switch</span></tt> コマンドを使うことです。これは基本的に、ツリーの中のコミットされていない変更がマージされること以外は、既存のブランチを除去して新しい位置で <tt class="docutils literal"><span class="pre">checkout</span></tt> を再び実行することと同じです。</p> <p>注: 場合によってバインドされた異なるブランチの適切なキャッシュをチェックアウトするために <tt class="docutils literal"><span class="pre">switch</span></tt> はコミットされた変更を廃棄するので、ローカルにコミットされているが最も最近バインドされたブランチにまだコミットされていない変更が存在する場合意図的に失敗します。 これらの変更を本当に廃棄したいのであれば、 <tt class="docutils literal"><span class="pre">--force</span></tt> オプションを使います。</p> </div> <div class="section" id="id4"> <h2>軽量型チェックアウトを切り替える<a class="headerlink" href="#id4" title="このヘッドラインへのパーマリンク">¶</a></h2> <p>軽量型チェックアウトでは、ローカルのコミットは存在せず、 <tt class="docutils literal"><span class="pre">switch</span></tt> は作業ツリーが関連づけられたブランチを効率よく選びます。 1つの可能なセットアップ方法は、ローカルツリーなしのリポジトリと軽量チェックアウトを組み合わせて使うことです。 これによって取り組むものを簡単に切り替えることができます。例です:</p> <div class="highlight-python"><pre>bzr init-repo --no-trees PROJECT cd PROJECT bzr branch sftp://centralhost/srv/bzr/PROJECT/trunk bzr checkout --lightweight trunk my-sandbox cd my-sandbox (hack away)</pre> </div> <p>この例のこの範囲でtrunk <tt class="docutils literal"><span class="pre">.bzr</span></tt> ディレクトリを持ちますがそこでのブランチとしての作業ツリーはツリーなしのリポジトリで作られたことに注意してください。必要な数だけブランチを入手もしくは作成して必要に応じてそれらの間で切り替えることができます。例です:</p> <div class="highlight-python"><pre>(my-sandboxの中にいることを前提とする) bzr branch sftp://centralhost/srv/bzr/PROJECT/PROJECT-1.0 ../PROJECT-1.0 bzr switch ../PROJECT-1.0 (fix bug in 1.0) bzr commit -m "blah, blah blah" bzr switch ../trunk (go back to working on the trunk)</pre> </div> <p>注: ブランチはローカルのみのものでも、(<tt class="docutils literal"><span class="pre">checkout</span></tt> で作るか <tt class="docutils literal"><span class="pre">branch</span></tt> でそれらを作った後で <tt class="docutils literal"><span class="pre">bind</span></tt> を使うことで)リモートのブランチにバインドされたものでも可能です。</p> </div> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h3><a href="../index.html">目次</a></h3> <ul> <li><a class="reference internal" href="#">チェックアウトを再利用する</a><ul> <li><a class="reference internal" href="#id2">動機</a></li> <li><a class="reference internal" href="#id3">ブランチが結びつけられた場所を変更する</a></li> <li><a class="reference internal" href="#id4">軽量型チェックアウトを切り替える</a></li> </ul> </li> </ul> <h4>前のトピックへ</h4> <p class="topless"><a href="working_offline_central.html" title="前の章へ">オフラインで集中型のブランチに取り組む</a></p> <h4>次のトピックへ</h4> <p class="topless"><a href="distributed_intro.html" title="次の章へ">分散型の開発</a></p> <h3>このページ</h3> <ul class="this-page-menu"> <li><a href="../_sources/user-guide/reusing_a_checkout.txt" rel="nofollow">ソースコードを表示</a></li> </ul> <div id="searchbox" style="display: none"> <h3>クイック検索</h3> <form class="search" action="../search.html" method="get"> <input type="text" name="q" size="18" /> <input type="submit" value="検索" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> モジュール、クラス、または関数名を入力してください </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>ナビゲーション</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="distributed_intro.html" title="分散型の開発" >次へ</a></li> <li class="right" > <a href="working_offline_central.html" title="オフラインで集中型のブランチに取り組む" >前へ</a> |</li> <li><a href="../index.html">目次 (2.2.4)</a> »</li> <li><a href="index.html" >Bazaarユーザーガイド</a> »</li> </ul> </div> <div class="footer"> © Copyright 2009, Canonical Ltd. このドキュメントは <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7 で生成しました。 </div> </body> </html>