Gitでソースコードを取得する
On this page... (hide)
- 1. はじめに
- 2. LyX Gitリポジトリ
- 3. Tracソースブラウザ
- 4. 匿名Gitクローン
- 5. 最初のダウンロードの後に
- 6. ソースをコンパイルする
- 7. ソースに変更を加える
- 8. ssh経由の書き込みアクセス
- 9. Gitブランチ(派生系列)
1. はじめに
Gitを用いると、複数の人が同時にコード開発に携わることができます。Gitのホームページからは、コードをダウンロードできるほか、Gitに関するさらに多くの情報を得ることができます。
LyXでの使用法についての詳細(あるいはLyXのコードに触ってみたい場合)は、私たちのwikiページをご覧ください。
旧来のSVNを使用している開発継続中のモジュールもありますので、その場合はここをご覧ください。
2. LyX Gitリポジトリ
- lyxgit
- このリポジトリは、LyXソースコードを提供するものです。次期メジャーリリースの開発は、「master」系列で行われ、マイナー(保全)リリースは「2.0.2」のような系列で行われます。次期安定版は、最新系列「2.0.x」に置かれます。旧来の慣習によって、master系列は「trunk」、保全系列は「branch」と呼ばれることもあります。
閲覧したい系列を選択するには、「Visit」プルダウンメニューを使ってください。
3. Tracソースブラウザ
Gitでは、リポジトリ全体をコマンド一つでダウンロードできます。Git中の1ファイルのみを見たいときは、Tracソースブラウザを使うと良いでしょう。Tracは、Gitリポジトリをブラウズすることを可能にする他、ログファイル等を読んだり、任意の版の間の差分を閲覧すること等を可能にするツールです。
LyX Gitリポジトリ(および旧SVNリポジトリ)のTracソースブラウザは、LyXホームページにあります。しかし、たいていの場合、Gitリポジトリをダウンロードする方を望まれるでしょう。その場合は、以下を引き続きお読みください。
4. 匿名Gitクローン
ソースのローカルコピーを置きたいディレクトリの中から、
git clone git://git.lyx.org/lyx
と実行してください。すると、lyx
というディレクトリが作られ、その中に大量のファイルがダウンロードされます(新規コピーは400MBを必要とします。ただし、コンパイル済み版にはもっと多くの--最大2GBの--スペースが必要です)。
lyx
ディレクトリの中で、git checkout 2.3.x
を実行すれば、保全系列に切り替えることができます。
5. 最初のダウンロードの後に
コードが更新されたならば、lyx
ディレクトリにcd
して、
git pull
と打ち込んでください。これによって、追加されたファイルのみがうまい具合にダウンロードされ、変更されたファイルのみにパッチが当てられるので、あなた(とサーバー)の時間が奪われずに済みます。
リポジトリに比較して、ローカルコピーにどのような変更が加えられたのかを確認したいだけならば、
git status
と行ってください。
6. ソースをコンパイルする
開発版のコンパイルや実行を行いたい場合は、automake
・autoconf
・gettext
のようなパッケージが追加で必要となりますので、tarballをダウンロードする場合よりも若干複雑になります。
Linuxでは、INSTALL
の指示に従うだけです(大概いつものように、①./autogen.sh
、②./configure
、③make
、④make install
と行うだけです)。
Linux以外では、INSTALL.Win32/MacOSXの説明に従ってください。
7. ソースに変更を加える
私たちは、あなたの創造の衝動を熱烈にサポートします。バグの修正や文書化、新機能の追加は、すべて注意深く目を向けられ、例外も多くありますが、通常受け入れられます。ただし、新機能については、安定リリース版に受け入れられることは滅多ありません。
LyXに変更を加えたい場合には、最近のリリース版ではなく、最新のgitソースに変更を加えていただいた方が、他の人々の作業が楽になります。以下は、あなたが行うことになる手順の概略です。
- まず
git pull
を使って、最新版のソースを取得してください。古いソースへのパッチは、適用することがかなり難しくなりますので、注目されない可能性が高くなります。 - ファイルに変更を加えます。
git diff > mypatch.diff
を実行してパッチを作成します。- そのパッチをLyX 開発者用メーリングリストに送ってください。
さらに望ましいのは、開発者用ソースツリーに即適用できる形の適切なコミットを送ってもらうことです。
- まず
git pull
を使って、最新版のソースを取得してください。古いソースへのパッチは、適用することがかなり難しくなりますので、注目されない可能性が高くなります。 - ファイルに変更を加えます。
git commit -a
を実行してコミットを作成します。こうすると、エディタが起動するので、そこに、あなたの変更点が何を行うのかの説明を書き込みます。git format-patch -1
を実行します。すると、カレントディレクトリに0001-title-of-your-patch.patch
というファイルが生成されます。- そのパッチをLyX 開発者用メーリングリストに送ってください。
8. ssh経由の書き込みアクセス
もし、あなたの作成したパッチの多くが、LyXチームによってコードに組み込まれるようになってきたならば、あなたにはGITアクセス権を与えられるかもしれません。その場合には、あなたの作業はもっと楽になるでしょう。詳細な情報は、私たちのwikiにあります。
LyXホームページの非wikiコンテンツ(ニュースやアナウンスメントなど)と、辞書・類義語辞典は、現在もSubversionによって追跡されています。
9. Gitブランチ(派生系列)
LyXの開発は、主にGitの各系列で行われます。開発を手助けしたり、各系列のテストを行いたい場合には、既にクローンをしたリポジトリ上で
git checkout 2.3.x
あるいは
git checkout master
というようなコマンドを実行すれば、そのコピーがチェックアウトされます。
系列名 | リリース管理者 | 保全責任者 | 状態 | 摘要 |
master (trunk) | S Kostyshak | 不安定 | マスター系列 | |
branch 2.3.x | S Kostyshak | RG Heck | 安定 | 2.3安定系列 |
branch 2.2.x | S Kostyshak | RG Heck | 安定 | 2.2安定系列 |
branch 2.1.x | VF Ravesteijn | RG Heck | 安定 | 2.1安定系列 |
branch 2.0.x | P Sanda | RG Heck | 安定 | 2.0安定系列 |
また、以下の廃止された旧系列もあります。
系列名 | リリース管理者 | 保全責任者 | 状態 | 摘要 |
BRANCH_1_6_X | JMatos | JSpitzm | 安定 | 1.6安定系列 |
BRANCH_1_5_X | JMatos | JSpitzm | 安定 | 1.5安定系列 |
BRANCH_1_4_X | LGBjønnes | JMarc | 安定 | 1.4安定系列 |
BRANCH_1_3_X | JMarc | 安定 | 1.3安定系列 | |
BRANCH-1_2_X | LGBjønnes | JMarc | 安定 | 1.2安定系列 |
BRANCH_1_1_6 | JMarc | 安定 | 1.1.6の安定化 |