Getting comm-central Source Code Using Mercurial

  • リビジョンの URL スラッグ: Developer_Guide/Source_Code/Getting_comm-central_Source_Code_Using_Mercurial
  • リビジョンのタイトル: Getting comm-central Source Code Using Mercurial
  • リビジョンの ID: 128722
  • 作成日:
  • 作成者: Marsf
  • 現行リビジョン いいえ
  • コメント page created, 437 words added

このリビジョンの内容

Mercurial は、ソースコードの変更をローカルで追跡し、それらの変更を他のユーザと共有するためのソースコード管理ツールです。Mozilla プロジェクトはソースコードの管理を、Mozilla 1.9 開発用の CVS から Mozilla 1.9.1 とその先の製品開発用の Mercurial へ移行しています。

Thunderbird 2.0 や SeaMonkey 1.1, Firefox 3.0 の開発のためのパッチを提出したいときは、CVS を使用してください。

クライアント設定

The settings are the same as for the core Firefox 3.5/xulrunner 1.9.1 development. See

Mozilla_Source_Code_(Mercurial)#Client_settings.

ソースツリーのチェックアウト

The Thunderbird and Seamonkey source code is contained in several different repositories. The main integration repository for Thunderbird 3.0/SeaMonkey 2.0/Sunbird 1.0 development is comm-central. It contains the code needed by Thunderbird, Sunbird and SeaMonkey. It also contains a script, client.py, which is used to get the other code.

To get comm-central ("clone" the repository, using Mercurial terminology):

# Pull the Mozilla source to the folder src/ - may take a while 
# as hundreds of megabytes of history is downloaded to .hg
hg clone http://hg.mozilla.org/comm-central/ src

cd src
If you already have a mozilla-1.9.1 tree, you can at this stage clone it to src/mozilla to avoid pulling all of mozilla-1.9.1 again.

Update/pull all other needed sources using client.py:

python client.py checkout
  • If you get the error message "No module named subprocess", install python 2.4 or later.
  • This step will download hundreds of megabytes of data. This can take a while, depending on your network connection.

client.py performs the following tasks:

  • Pulls the mozilla-1.9.1 codebase (Firefox 3.5/xulrunner 1.9.1) into mozilla/
  • Pulls the following repositories into mozilla/extensions:
    • inspector (DOM Inspector)
    • venkman (JavaScript Debugger)
  • Pulls the following directories from cvs:
    • extensions/irc (Chatzilla) (into mozilla/extensions/irc)
    • directory/c-sdk
  • Runs a 'hg pull' to pull changes. This is not required (in fact, you may prefer to pull manually). Pass --skip-comm to client.py to skip this.
Pulling in the related repositories means that you can use the same source directories to develop and build any of the items mentioned above, but does not mean that you can create cross-repository change sets. Patches that span repositories will require multiple changesets.

ビルド

For the comm-central apps, see the following links:

Firefox と xulrunner

You can, if needed, build Firefox or xulrunner from this tree. As client.py pulls the mozilla-central repository, builds and development of Firefox and xulrunner can take place within a repository from comm-central. The only difference is that you will need to go into the mozilla/ directory before running the build command:

cd src/mozilla
make -f client.mk build

参照

{{ languages( { "en": "En/Developer_Guide/Source_Code/Getting_comm-central", "fr": "fr/Code_source_de_comm-central_(Mercurial)" } ) }}

このリビジョンのソースコード

<p><a href="/ja/Mercurial" title="ja/Mercurial">Mercurial</a> は、ソースコードの変更をローカルで追跡し、それらの変更を他のユーザと共有するためのソースコード管理ツールです。Mozilla プロジェクトはソースコードの管理を、Mozilla 1.9 開発用の <a href="/En/Developer_Guide/Source_Code/CVS" title="Getting Older Mozilla Source Code Using CVS">CVS</a> から Mozilla 1.9.1 とその先の製品開発用の Mercurial へ移行しています。</p>
<div class="note">Thunderbird 2.0 や SeaMonkey 1.1, Firefox 3.0 の開発のためのパッチを提出したいときは、<a href="/Ja/Developer_Guide/Source_Code/CVS" title="Getting Older Mozilla Source Code Using CVS">CVS</a> を使用してください。</div>
<h3 name="Client_Settings">クライアント設定</h3>
<p>The settings are the same as for the core Firefox 3.5/xulrunner 1.9.1 development. See</p>
<p><a href="/En/Developer_Guide/Source_Code/Mercurial#Client_settings" title="en/Mozilla_Source_Code_(Mercurial)#Client_settings">Mozilla_Source_Code_(Mercurial)#Client_settings</a>.</p>
<h3 name="Checking_out_a_source_tree">ソースツリーのチェックアウト</h3>
<p>The Thunderbird and Seamonkey source code is contained in several different repositories. The main integration repository for Thunderbird 3.0/SeaMonkey 2.0/Sunbird 1.0 development is <a href="/en/comm-central" title="en/comm-central"> comm-central</a>. It contains the code needed by Thunderbird, Sunbird and SeaMonkey. It also contains a script, <code>client.py</code>, which is used to get the other code.</p>
<p>To get comm-central ("clone" the repository, using Mercurial terminology):</p>
<pre class="eval"># Pull the Mozilla source to the folder src/ - may take a while 
# as hundreds of megabytes of history is downloaded to .hg
hg clone <span class="nowiki">http://hg.mozilla.org/comm-central/</span> src

cd src
</pre>
<div class="note">If you already have a mozilla-1.9.1 tree, you can at this stage clone it to src/mozilla to avoid pulling all of mozilla-1.9.1 again.</div>
<p>Update/pull all other needed sources using client.py:</p>
<pre class="eval">python client.py checkout
</pre>
<div class="note">
<ul> <li>If you get the error message "No module named subprocess", install python 2.4 or later.</li> <li>This step will download hundreds of megabytes of data. This can take a while, depending on your network connection.</li>
</ul>
</div>
<p>client.py performs the following tasks:</p>
<ul> <li>Pulls the mozilla-1.9.1 codebase (Firefox 3.5/xulrunner 1.9.1) into mozilla/</li> <li>Pulls the following repositories into mozilla/extensions: <ul> <li>inspector (DOM Inspector)</li> <li>venkman (JavaScript Debugger)</li> </ul> </li> <li>Pulls the following directories from cvs:<br> <ul> <li>extensions/irc (Chatzilla) (into mozilla/extensions/irc)</li> <li>directory/c-sdk</li> </ul> </li> <li>Runs a 'hg pull' to pull changes. This is not required (in fact, you may prefer to pull manually). Pass --skip-comm to client.py to skip this.</li>
</ul>
<div class="note">Pulling in the related repositories means that you can use the same source directories to develop and build any of the items mentioned above, but does not mean that you can create cross-repository change sets. Patches that span repositories will require multiple changesets.</div>
<h3 name="Building">ビルド</h3>
<p>For the comm-central apps, see the following links:</p>
<ul> <li><a class="internal" href="/en/Simple_Thunderbird_build" title="en/Simple Thunderbird build">Simple Thunderbird Build</a></li> <li><a class="internal" href="/en/Simple_SeaMonkey_build" title="en/Simple SeaMonkey build">Simple SeaMonkey Build</a></li> <li><a class="internal" href="/en/Simple_Sunbird_build" title="en/Simple Sunbird build">Simple Sunbird Build</a></li>
</ul>
<h4 name="Firefox_and_xulrunner">Firefox と xulrunner</h4>
<p>You can, if needed, build Firefox or xulrunner from this tree. As client.py pulls the mozilla-central repository, builds and development of Firefox and xulrunner can take place within a repository from comm-central. The only difference is that you will need to go into the mozilla/ directory before running the build command:</p>
<pre class="eval">cd src/mozilla
make -f client.mk build
</pre>
<h3 name="See_Also">参照</h3>
<ul> <li><a href="/ja/comm-central" title="ja/comm-central">comm-central</a></li> <li><a href="/ja/Mercurial" title="ja/Mercurial">Mercurial</a></li> <li><a href="/ja/Mercurial_FAQ" title="ja/Mercurial_FAQ">Mercurial FAQ</a></li> <li><a href="/Ja/Developer_Guide/Source_Code/Mercurial" title="ja/Mozilla_Source_Code_(Mercurial)">Mozilla_Source_Code_(Mercurial)</a></li>
</ul>
<p>{{ languages( { "en": "En/Developer_Guide/Source_Code/Getting_comm-central", "fr": "fr/Code_source_de_comm-central_(Mercurial)" } ) }}</p>
Revert to this revision