Help us understand the problem. What is going on with this article?

GitHubクローン「GitLab」を日本語化して使う方法

More than 5 years have passed since last update.

日本語化パッチ作りました。
2014/7/5現在、GitLab最新バージョン7.0.0まで対応してあります。

スクリーンショット 2014-07-05 15.26.41.png

GitLabについて

GitHubクローンの中でも有名な「GitLab」ですが、開発速度が非常に速く、機能も充実しています。
「GitHubだとソースコードを外に置くことになるNG…でもGitHubのようなワークフローで仕事をしたい」という場合に非常に便利です。
ですが、このGitLab、開発スピードを重視しているので英語のみで開発されています。
(i18n対応がissueに上がっていたものも見かけましたが、上記理由でdeclineされていました)
「チームには英語だと抵抗のあるメンバーもいるし、日本語で使いたい…だったら作ろう」と思い立って、日本語化パッチを作りました。
GitLabの導入、パッチの適用方法、簡単に試してみる方法、等々がこの記事の内容です。

GitLabの導入

導入は数年前に比べて遥かに簡単になっています。
Ubuntu, CentOS, Debianなら以下からパッケージをダウンロードしてインストールし、コマンドをいくつか叩くだけで使えるようになります。
https://www.gitlab.com/downloads/
(詳細は上記ページに書いてあります)

GitLab日本語化パッチの適用

ここから最新のリリースを取得してきます。
https://github.com/ksoichiro/gitlab-i18n-patch

patches/[GitLabバージョン]/app_ja.patchがパッチです。
例えばホームディレクトリにパッチファイルを配置した場合、以下で適用します。

$ cd /opt/gitlab/embedded/service/gitlab-rails
$ patch -p1 < ~/app_ja.patch

JavaScriptファイルを変更するため、パッチ適用後にプリコンパイルされたファイルを一度削除してプリコンパイルし直してください。

例:

$ cd /opt/gitlab/embedded/service/gitlab-rails
$ rm -rf public/assets
$ export PATH=/opt/gitlab/embedded/bin:$PATH
$ bundle exec rake assets:precompile RAILS_ENV=production

この辺りの手順は変わるかもしれませんので、
実際に試す場合は上記リポジトリのREADMEもご参照ください。

Vagrantで試す

いきなりGitLab用のサーバを用意して導入する、というのも難しいと思いますので、Vagrantで試せるようにしてあります。
上記パッチのプロジェクトをダウンロードorクローンしてきた上で、
以下のようにするとローカルでGitLabが立ち上がります。
(VirtualBoxとVagrantはインストールしておいてください)

$ cd gitlab-i18n-patch/
$ vagrant up v700

セットアップはこんな感じで出力されます。

$ vagrant up v700
Bringing machine 'v700' up with 'virtualbox' provider...
==> v700: Importing base box 'precise64'...
==> v700: Matching MAC address for NAT networking...
:
(中略)
:
Provisioning GitLab v7.0.0...
Installing gitlab...
Reconfiguring gitlab...
Updating apt-get...
Installing patch...
Creating backup of gitlab-rails...
Applying patch...
Refreshing assets (this may take minutes)...
Restarting gitlab...
Done!
GitLab v7.0.0 has been installed: http://localhost:9700/

上記でセットアップが終わった後、http://localhost:9700/ でアクセスできます。
他のバージョンを試す場合は、ポート番号を9000 + バージョンから'.'を取った値に読み替えてください。

セットアップ直後はGitLabの管理ユーザでログインできます。
ユーザ名はroot(もしくはadmin@local.host)、初期パスワードは5iveL!feです。

VMのチューニングなど

現状、VirtualBoxでメモリを1GB、CPUを2で割り当てています。
メモリが足りないor使い過ぎ、等の場合はVagrantfileの以下の部分を修正してください。

  config.vm.provider "virtualbox" do |v|
    v.memory = 1024
    v.cpus = 2
  end

注意点など

  • 利用される場合は自己責任でお願いします
  • 日本語化できていない部分もあります
  • 訳がおかしい部分があればご指摘いただけると幸いです

おまけ:パッチの内容と成り立ちについて

Ruby on Railsで作られているので、そのi18nなどの仕組みに乗っかれれば良かったのですが、国際化対応しない方針ということもありGitLabそのものがそういう作りになっていません。
作り込んでも良いですが、あまり本体からロジック的に変えてしまうとバージョンアップに追随していけなくなる、と判断し直接ソースコード中の英語を書き換える方法を採っています。
(実際、3月頃に6.6.4をベースに開始して以来、すでに7回もパッチをアップデートさせています)

最初に取り組んだのがv6.6.4でしたので、これをベースにGitLab-CEをフォークしたリポジトリに日本語化ブランチを作り、以降のバージョンアップではこの日本語化ブランチにアップデートをマージし、コンフリクトを手動で解消していく、という地道な作業からできあがっています。
(一度に100ファイル以上コンフリクトすることも…)

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした