Windows用インストール方法1

環境

Windows7

XAPP(Apache、MySQL)

Ruby1.9

DevKit


手順

rubyのインストール

処理1
処理2
処理3
処理4
バージョンを確認
c:\>ruby -v
ruby 1.9.3p327 (2012-11-10) [i386-mingw32]
 
c:\>gem -v
1.8.24
 
c:\>
 
 
ディレクトリを確認
c:\Ruby193>dir
 ドライブ C のボリューム ラベルは OS_Install です
 ボリューム シリアル番号は xxxx-xxxx です
 
 c:\Ruby193 のディレクトリ
 
2012/12/24  23:31    <DIR>          .
2012/12/24  23:31    <DIR>          ..
2012/12/24  23:31    <DIR>          bin
2012/12/24  23:30    <DIR>          doc
2012/12/24  23:30    <DIR>          include
2012/12/24  23:30    <DIR>          lib
2012/12/24  23:31    <DIR>          share
2012/12/24  23:31           338,943 unins000.dat
2012/12/24  23:29         1,167,632 unins000.exe
2012/12/24  23:31            22,167 unins000.msg
               3 個のファイル           1,528,742 バイト
               7 個のディレクトリ  51,546,435,584 バイトの空き領域
 
c:\Ruby193>mkdir
 
 

DevKitをインストール

"c:\Ruby193\DevKit"に"DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe"をコピーして実行して解凍する
c:\Ruby193\DevKit>dir
 ドライブ C のボリューム ラベルは OS_Install です
 ボリューム シリアル番号は xxxx-xxxx です
 
 c:\Ruby193\DevKit のディレクトリ
 
2012/12/24  23:36    <DIR>          .
2012/12/24  23:36    <DIR>          ..
2011/12/30  05:59    <DIR>          bin
2012/12/24  23:34        22,975,511 DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe
2011/12/30  05:59               297 devkitvars.bat
2011/12/30  05:59               361 devkitvars.ps1
2011/12/30  05:59            10,390 dk.rb
2011/12/30  05:59    <DIR>          etc
2010/02/06  09:39    <DIR>          include
2011/12/30  05:59    <DIR>          lib
2009/07/12  03:34             2,238 m.ico
2011/12/30  05:59    <DIR>          mingw
2010/09/29  08:48             7,167 msys.bat
2009/07/12  03:34            37,758 msys.ico
2010/03/18  07:06    <DIR>          postinstall
2010/04/17  12:53    <DIR>          sbin
2011/12/30  05:59    <DIR>          share
               7 個のファイル          23,033,722 バイト
              10 個のディレクトリ  51,343,376,384 バイトの空き領域
 
c:\Ruby193\DevKit>
 
 

コマンド「ruby dk.rb init」を実行
c:\Ruby193\DevKit>ruby dk.rb init
[INFO] found RubyInstaller v1.9.3 at C:/Ruby193
 
Initialization complete! Please review and modify the auto-generated
'config.yml' file to ensure it contains the root directories to all
of the installed Rubies you want enhanced by the DevKit.
 
c:\Ruby193\DevKit>
 
 

コマンド「ruby dk.rb install」を実行
c:\Ruby193\DevKit>ruby dk.rb install
[INFO] Updating convenience notice gem override for 'C:/Ruby193'
[INFO] Installing 'C:/Ruby193/lib/ruby/site_ruby/devkit.rb'
 
c:\Ruby193\DevKit>
 
 

MySQLのDLLをダウンロード

http://cdn.mysql.com/Downloads/Connector-C/mysql-connector-c-noinstall-6.0.2-win32.zip
よりmysql-connector-c-noinstall-6.0.2-win32.zipをダウンロードして解凍し
lib配下のlibmysql.dllをrubyのbin配下へコピー
c:\Ruby193>copy C:\Downloads\mysql-connector-c-noinstall-6.0.2-win32\lib\libmysql.dll bin\libmysql.dll
        1 個のファイルをコピーしました。
 
c:\Ruby193>
 
 

gemで必要なものをインストール

c:\Ruby193>gem query -rn rubygems-update
 
*** REMOTE GEMS ***
 
rubygems-update (1.8.24)
 
c:\Ruby193>gem install rubygems-update
Fetching: rubygems-update-1.8.24.gem (100%)
Successfully installed rubygems-update-1.8.24
1 gem installed
Installing ri documentation for rubygems-update-1.8.24...
unable to convert U+0160 from UTF-8 to Windows-31J for History.txt, skipping
Installing RDoc documentation for rubygems-update-1.8.24...
unable to convert U+0160 from UTF-8 to Windows-31J for History.txt, skipping
 
c:\Ruby193>
 
==========================================================
c:\Ruby193>gem install rake
Fetching: rake-10.0.3.gem (100%)
Successfully installed rake-10.0.3
1 gem installed
Installing ri documentation for rake-10.0.3...
Installing RDoc documentation for rake-10.0.3...
 
c:\Ruby193>
 
c:\Ruby193>gem install rdoc
Fetching: rdoc-3.12.gem (100%)
Depending on your version of ruby, you may need to install ruby rdoc/ri data:
 
<= 1.8.6 : unsupported
 = 1.8.7 : gem install rdoc-data; rdoc-data --install
 = 1.9.1 : gem install rdoc-data; rdoc-data --install
>= 1.9.2 : nothing to do! Yay!
Successfully installed rdoc-3.12
1 gem installed
Installing ri documentation for rdoc-3.12...
unable to convert U+00A9 from UTF-8 to Windows-31J for lib/rdoc/text.rb, skipping
unable to convert "\xD0" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to Windows-31J for History.rdoc, skipping
Installing RDoc documentation for rdoc-3.12...
unable to convert U+00A9 from UTF-8 to Windows-31J for lib/rdoc/text.rb, skipping
unable to convert "\xD0" to UTF-8 in conversion from ASCII-8BIT to UTF-8 to Windows-31J for History.rdoc, skipping
 
c:\Ruby193>
 
c:\Ruby193>gem install rdoc-data
Fetching: rdoc-data-3.12.gem (100%)
rdoc-data is only required for C ruby 1.8.7 or 1.9.1.
 
rdoc-data is required for JRuby.
 
To install ri data for RDoc 2.5+ run:
 
  rdoc-data --install
 
Successfully installed rdoc-data-3.12
1 gem installed
Installing ri documentation for rdoc-data-3.12...
Installing RDoc documentation for rdoc-data-3.12...
 
c:\Ruby193>
 
c:\Ruby193>gem install bundler
Fetching: bundler-1.2.3.gem (100%)
Successfully installed bundler-1.2.3
1 gem installed
Installing ri documentation for bundler-1.2.3...
Installing RDoc documentation for bundler-1.2.3...
 
c:\Ruby193>
 
c:\Ruby193>gem install mocha -v 0.12.3
Fetching: metaclass-0.0.1.gem (100%)
Fetching: mocha-0.12.3.gem (100%)
Successfully installed metaclass-0.0.1
Successfully installed mocha-0.12.3
2 gems installed
Installing ri documentation for metaclass-0.0.1...
Installing ri documentation for mocha-0.12.3...
Installing RDoc documentation for metaclass-0.0.1...
Installing RDoc documentation for mocha-0.12.3...
 
c:\Ruby193>
 
c:\Ruby193>gem install bundle
Fetching: bundle-0.0.1.gem (100%)
Successfully installed bundle-0.0.1
1 gem installed
Installing ri documentation for bundle-0.0.1...
Installing RDoc documentation for bundle-0.0.1...
 
c:\Ruby193>
 
c:\Ruby193>gem install rails
Successfully installed i18n-0.6.1
Successfully installed multi_json-1.5.0
Successfully installed activesupport-3.2.9
Successfully installed builder-3.0.4
Successfully installed activemodel-3.2.9
Successfully installed rack-1.4.1
Successfully installed rack-cache-1.2
Successfully installed rack-test-0.6.2
Successfully installed journey-1.0.4
Successfully installed hike-1.2.1
Successfully installed tilt-1.3.3
Successfully installed sprockets-2.2.2
Successfully installed erubis-2.7.0
Successfully installed actionpack-3.2.9
Successfully installed arel-3.0.2
Successfully installed tzinfo-0.3.35
Successfully installed activerecord-3.2.9
Successfully installed activeresource-3.2.9
Successfully installed mime-types-1.19
Successfully installed polyglot-0.3.3
Successfully installed treetop-1.4.12
Successfully installed mail-2.4.4
Successfully installed actionmailer-3.2.9
Successfully installed rack-ssl-1.3.2
Successfully installed thor-0.16.0
Successfully installed railties-3.2.9
Successfully installed rails-3.2.9
27 gems installed
Installing ri documentation for i18n-0.6.1...
Installing ri documentation for multi_json-1.5.0...
Installing ri documentation for activesupport-3.2.9...
Installing ri documentation for builder-3.0.4...
Installing ri documentation for activemodel-3.2.9...
Installing ri documentation for rack-1.4.1...
Installing ri documentation for rack-cache-1.2...
Installing ri documentation for rack-test-0.6.2...
Installing ri documentation for journey-1.0.4...
Installing ri documentation for hike-1.2.1...
Installing ri documentation for tilt-1.3.3...
Installing ri documentation for sprockets-2.2.2...
Installing ri documentation for erubis-2.7.0...
Installing ri documentation for actionpack-3.2.9...
Installing ri documentation for arel-3.0.2...
Installing ri documentation for tzinfo-0.3.35...
Installing ri documentation for activerecord-3.2.9...
Installing ri documentation for activeresource-3.2.9...
Installing ri documentation for mime-types-1.19...
Installing ri documentation for polyglot-0.3.3...
Installing ri documentation for treetop-1.4.12...
Installing ri documentation for mail-2.4.4...
Installing ri documentation for actionmailer-3.2.9...
Installing ri documentation for rack-ssl-1.3.2...
Installing ri documentation for thor-0.16.0...
Installing ri documentation for railties-3.2.9...
Installing ri documentation for rails-3.2.9...
Installing RDoc documentation for i18n-0.6.1...
Installing RDoc documentation for multi_json-1.5.0...
Installing RDoc documentation for activesupport-3.2.9...
Installing RDoc documentation for builder-3.0.4...
Installing RDoc documentation for activemodel-3.2.9...
Installing RDoc documentation for rack-1.4.1...
Installing RDoc documentation for rack-cache-1.2...
Installing RDoc documentation for rack-test-0.6.2...
Installing RDoc documentation for journey-1.0.4...
Installing RDoc documentation for hike-1.2.1...
Installing RDoc documentation for tilt-1.3.3...
Installing RDoc documentation for sprockets-2.2.2...
Installing RDoc documentation for erubis-2.7.0...
Installing RDoc documentation for actionpack-3.2.9...
Installing RDoc documentation for arel-3.0.2...
Installing RDoc documentation for tzinfo-0.3.35...
Installing RDoc documentation for activerecord-3.2.9...
Installing RDoc documentation for activeresource-3.2.9...
Installing RDoc documentation for mime-types-1.19...
Installing RDoc documentation for polyglot-0.3.3...
Installing RDoc documentation for treetop-1.4.12...
Installing RDoc documentation for mail-2.4.4...
Installing RDoc documentation for actionmailer-3.2.9...
Installing RDoc documentation for rack-ssl-1.3.2...
Installing RDoc documentation for thor-0.16.0...
Installing RDoc documentation for railties-3.2.9...
Installing RDoc documentation for rails-3.2.9...
 
 

redmineを指定ディレクトリへ展開して移動

c:\Ruby193>d:
 
d:\>cd D:\Tools\redmine-2.2.0
 
D:\Tools\redmine-2.2.0>
 
D:\Tools\redmine-2.2.0>dir
 ドライブ D のボリューム ラベルは Data です
 ボリューム シリアル番号は xxxx-xxxx です
 
 D:\Tools\redmine-2.2.0 のディレクトリ
 
2012/12/25  00:13    <DIR>          .
2012/12/25  00:13    <DIR>          ..
2012/12/18  14:07               631 .gitignore
2012/12/18  14:07               632 .hgignore
2012/12/25  00:13    <DIR>          app
2012/12/25  00:13    <DIR>          config
2012/12/18  14:07               164 config.ru
2012/12/25  00:13    <DIR>          db
2012/12/25  00:13    <DIR>          doc
2012/12/25  00:13    <DIR>          extra
2012/12/25  00:13    <DIR>          files
2012/12/18  14:07             2,267 Gemfile
2012/12/25  00:13    <DIR>          lib
2012/12/25  00:13    <DIR>          log
2012/12/25  00:13    <DIR>          plugins
2012/12/25  00:13    <DIR>          public
2012/12/18  14:07               282 Rakefile
2012/12/18  14:07               210 README.rdoc
2012/12/25  00:13    <DIR>          script
2012/12/25  00:13    <DIR>          test
2012/12/25  00:13    <DIR>          tmp
2012/12/18  14:07    <DIR>          vendor
               6 個のファイル               4,186 バイト
              16 個のディレクトリ  83,503,751,168 バイトの空き領域
 
D:\Tools\redmine-2.2.0>
 
 

redmineで必要なものをインストール

D:\Tools\redmine-2.2.0>bundle install --without rmagick
Fetching gem metadata from http://rubygems.org/.........
Fetching gem metadata from http://rubygems.org/..
Using rake (10.0.3)
Using i18n (0.6.1)
Using multi_json (1.5.0)
Using activesupport (3.2.9)
Installing builder (3.0.0)
Using activemodel (3.2.9)
Using erubis (2.7.0)
Using journey (1.0.4)
Using rack (1.4.1)
Using rack-cache (1.2)
Using rack-test (0.6.2)
Using hike (1.2.1)
Using tilt (1.3.3)
Using sprockets (2.2.2)
Using actionpack (3.2.9)
Using mime-types (1.19)
Using polyglot (0.3.3)
Using treetop (1.4.12)
Using mail (2.4.4)
Using actionmailer (3.2.9)
Using arel (3.0.2)
Using tzinfo (0.3.35)
Using activerecord (3.2.9)
Using activeresource (3.2.9)
Using bundler (1.2.3)
Installing coderay (1.0.8)
Using rack-ssl (1.3.2)
Installing json (1.7.5) with native extensions
Using rdoc (3.12)
Using thor (0.16.0)
Using railties (3.2.9)
Installing jquery-rails (2.0.3)
Using metaclass (0.0.1)
Using mocha (0.12.3)
Installing mysql2 (0.3.11)
Installing net-ldap (0.3.1)
Installing pg (0.14.1)
Installing ruby-openid (2.1.8)
Installing rack-openid (1.3.1)
Using rails (3.2.9)
Installing shoulda (2.11.3)
Installing sqlite3 (1.3.6)
Installing yard (0.8.3)
Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed.
 
D:\Tools\redmine-2.2.0>
 
 

データベースを作成する

管理画面を表示
データベースで「redmine」のデータベースを作成する
データベースが作成されたことを確認

データベースの設定を変更

config/database.yml.exampleをコピーして、config/database.ymlとしファイル編集
production:
  adapter: mysql2
  database: redmine
  host: localhost
  username: root
  password: ""
  encoding: utf8
 
 

テーブルを作成

「rake db:migrate RAILS_ENV="production"」を実行してテーブルを作成
D:\Tools\redmine-2.2.0>rake db:migrate RAILS_ENV="production"
==  Setup: migrating ==========================================================
-- create_table("attachments", {:force=>true})
   -> 0.1290s
-- create_table("auth_sources", {:force=>true})
   -> 0.0930s
-- create_table("custom_fields", {:force=>true})
   -> 0.1000s
-- create_table("custom_fields_projects", {:id=>false, :force=>true})
   -> 0.1020s
-- create_table("custom_fields_trackers", {:id=>false, :force=>true})
   -> 0.0980s
-- create_table("custom_values", {:force=>true})
   -> 0.0950s
-- create_table("documents", {:force=>true})
   -> 0.0780s
-- add_index("documents", ["project_id"], {:name=>"documents_project_id"})
   -> 0.1770s
-- create_table("enumerations", {:force=>true})
   -> 0.1960s
-- create_table("issue_categories", {:force=>true})
   -> 0.2070s
-- add_index("issue_categories", ["project_id"], {:name=>"issue_categories_project_id"})
   -> 0.1790s
-- create_table("issue_histories", {:force=>true})
   -> 0.2140s
-- add_index("issue_histories", ["issue_id"], {:name=>"issue_histories_issue_id"})
   -> 0.1540s
-- create_table("issue_statuses", {:force=>true})
   -> 0.0840s
-- create_table("issues", {:force=>true})
   -> 0.0960s
-- add_index("issues", ["project_id"], {:name=>"issues_project_id"})
   -> 0.1690s
-- create_table("members", {:force=>true})
   -> 0.1900s
-- create_table("news", {:force=>true})
   -> 0.1000s
-- add_index("news", ["project_id"], {:name=>"news_project_id"})
   -> 0.1420s
-- create_table("permissions", {:force=>true})
   -> 0.0960s
-- create_table("permissions_roles", {:id=>false, :force=>true})
   -> 0.1020s
-- add_index("permissions_roles", ["role_id"], {:name=>"permissions_roles_role_id"})
   -> 0.1560s
-- create_table("projects", {:force=>true})
   -> 0.0810s
-- create_table("roles", {:force=>true})
   -> 0.0990s
-- create_table("tokens", {:force=>true})
   -> 0.0930s
-- create_table("trackers", {:force=>true})
   -> 0.0960s
-- create_table("users", {:force=>true})
   -> 0.0890s
-- create_table("versions", {:force=>true})
   -> 0.1000s
-- add_index("versions", ["project_id"], {:name=>"versions_project_id"})
   -> 0.1940s
-- create_table("workflows", {:force=>true})
   -> 0.1610s
==  Setup: migrated (6.0963s) =================================================
 
==  IssueMove: migrating ======================================================
==  IssueMove: migrated (0.1250s) =============================================
 
==  IssueAddNote: migrating ===================================================
==  IssueAddNote: migrated (0.0810s) ==========================================
 
==  ExportPdf: migrating ======================================================
==  ExportPdf: migrated (0.1360s) =============================================
 
==  IssueStartDate: migrating =================================================
-- add_column(:issues, :start_date, :date)
   -> 0.2510s
-- add_column(:issues, :done_ratio, :integer, {:default=>0, :null=>false})
   -> 0.2450s
==  IssueStartDate: migrated (0.4960s) ========================================
 
==  CalendarAndActivity: migrating ============================================
==  CalendarAndActivity: migrated (0.1600s) ===================================
 
==  CreateJournals: migrating =================================================
-- create_table(:journals, {:force=>true})
   -> 0.1150s
-- create_table(:journal_details, {:force=>true})
   -> 0.1110s
-- add_index("journals", ["journalized_id", "journalized_type"], {:name=>"journals_journalized_id"})
   -> 0.2050s
-- add_index("journal_details", ["journal_id"], {:name=>"journal_details_journal_id"})
   -> 0.2260s
-- drop_table(:issue_histories)
   -> 0.1050s
==  CreateJournals: migrated (1.0641s) ========================================
 
==  CreateUserPreferences: migrating ==========================================
-- create_table(:user_preferences)
   -> 0.1020s
==  CreateUserPreferences: migrated (0.1020s) =================================
 
==  AddHideMailPref: migrating ================================================
-- add_column(:user_preferences, :hide_mail, :boolean, {:default=>false})
   -> 0.2020s
==  AddHideMailPref: migrated (0.2020s) =======================================
 
==  CreateComments: migrating =================================================
-- create_table(:comments)
   -> 0.1480s
==  CreateComments: migrated (0.1480s) ========================================
 
==  AddNewsCommentsCount: migrating ===========================================
-- add_column(:news, :comments_count, :integer, {:default=>0, :null=>false})
   -> 0.2060s
==  AddNewsCommentsCount: migrated (0.2060s) ==================================
 
==  AddCommentsPermissions: migrating =========================================
==  AddCommentsPermissions: migrated (0.2640s) ================================
 
==  CreateQueries: migrating ==================================================
-- create_table(:queries, {:force=>true})
   -> 0.1290s
==  CreateQueries: migrated (0.1290s) =========================================
 
==  AddQueriesPermissions: migrating ==========================================
==  AddQueriesPermissions: migrated (0.0610s) =================================
 
==  CreateRepositories: migrating =============================================
-- create_table(:repositories, {:force=>true})
   -> 0.2390s
==  CreateRepositories: migrated (0.2400s) ====================================
 
==  AddRepositoriesPermissions: migrating =====================================
==  AddRepositoriesPermissions: migrated (0.3470s) ============================
 
==  CreateSettings: migrating =================================================
-- create_table(:settings, {:force=>true})
   -> 0.1080s
==  CreateSettings: migrated (0.1090s) ========================================
 
==  SetDocAndFilesNotifications: migrating ====================================
==  SetDocAndFilesNotifications: migrated (0.1920s) ===========================
 
==  AddIssueStatusPosition: migrating =========================================
-- add_column(:issue_statuses, :position, :integer, {:default=>1})
   -> 0.2280s
==  AddIssueStatusPosition: migrated (0.3050s) ================================
 
==  AddRolePosition: migrating ================================================
-- add_column(:roles, :position, :integer, {:default=>1})
   -> 0.1950s
==  AddRolePosition: migrated (0.2840s) =======================================
 
==  AddTrackerPosition: migrating =============================================
-- add_column(:trackers, :position, :integer, {:default=>1})
   -> 0.2050s
==  AddTrackerPosition: migrated (0.2380s) ====================================
 
==  SerializePossiblesValues: migrating =======================================
==  SerializePossiblesValues: migrated (0.0440s) ==============================
 
==  AddTrackerIsInRoadmap: migrating ==========================================
-- add_column(:trackers, :is_in_roadmap, :boolean, {:default=>true, :null=>false})
   -> 0.2720s
==  AddTrackerIsInRoadmap: migrated (0.2720s) =================================
 
==  AddRoadmapPermission: migrating ===========================================
==  AddRoadmapPermission: migrated (0.0590s) ==================================
 
==  AddSearchPermission: migrating ============================================
==  AddSearchPermission: migrated (0.0630s) ===================================
 
==  AddRepositoryLoginAndPassword: migrating ==================================
-- add_column(:repositories, :login, :string, {:limit=>60, :default=>""})
   -> 0.2050s
-- add_column(:repositories, :password, :string, {:limit=>60, :default=>""})
   -> 0.2290s
==  AddRepositoryLoginAndPassword: migrated (0.4350s) =========================
 
==  CreateWikis: migrating ====================================================
-- create_table(:wikis)
   -> 0.1020s
-- add_index(:wikis, :project_id, {:name=>:wikis_project_id})
   -> 0.1920s
==  CreateWikis: migrated (0.2940s) ===========================================
 
==  CreateWikiPages: migrating ================================================
-- create_table(:wiki_pages)
   -> 0.0870s
-- add_index(:wiki_pages, [:wiki_id, :title], {:name=>:wiki_pages_wiki_id_title})
   -> 0.1470s
==  CreateWikiPages: migrated (0.2350s) =======================================
 
==  CreateWikiContents: migrating =============================================
-- create_table(:wiki_contents)
   -> 0.0830s
-- add_index(:wiki_contents, :page_id, {:name=>:wiki_contents_page_id})
   -> 0.1470s
-- create_table(:wiki_content_versions)
   -> 0.0860s
-- add_index(:wiki_content_versions, :wiki_content_id, {:name=>:wiki_content_versions_wcid})
   -> 0.1890s
==  CreateWikiContents: migrated (0.5050s) ====================================
 
==  AddProjectsFeedsPermissions: migrating ====================================
==  AddProjectsFeedsPermissions: migrated (0.0820s) ===========================
 
==  AddRepositoryRootUrl: migrating ===========================================
-- add_column(:repositories, :root_url, :string, {:limit=>255, :default=>""})
   -> 0.2720s
==  AddRepositoryRootUrl: migrated (0.2720s) ==================================
 
==  CreateTimeEntries: migrating ==============================================
-- create_table(:time_entries)
   -> 0.1070s
-- add_index(:time_entries, [:project_id], {:name=>:time_entries_project_id})
   -> 0.2210s
-- add_index(:time_entries, [:issue_id], {:name=>:time_entries_issue_id})
   -> 0.2040s
==  CreateTimeEntries: migrated (0.5320s) =====================================
 
==  AddTimelogPermissions: migrating ==========================================
==  AddTimelogPermissions: migrated (0.0610s) =================================
 
==  CreateChangesets: migrating ===============================================
-- create_table(:changesets)
   -> 0.0940s
-- add_index(:changesets, [:repository_id, :revision], {:unique=>true, :name=>:changesets_repos_rev})
   -> 0.1750s
==  CreateChangesets: migrated (0.2690s) ======================================
 
==  CreateChanges: migrating ==================================================
-- create_table(:changes)
   -> 0.1020s
-- add_index(:changes, [:changeset_id], {:name=>:changesets_changeset_id})
   -> 0.2250s
==  CreateChanges: migrated (0.3270s) =========================================
 
==  AddChangesetCommitDate: migrating =========================================
-- add_column(:changesets, :commit_date, :date)
   -> 0.2380s
==  AddChangesetCommitDate: migrated (0.2540s) ================================
 
==  AddProjectIdentifier: migrating ===========================================
-- add_column(:projects, :identifier, :string, {:limit=>20})
   -> 0.2510s
==  AddProjectIdentifier: migrated (0.2530s) ==================================
 
==  AddCustomFieldIsFilter: migrating =========================================
-- add_column(:custom_fields, :is_filter, :boolean, {:null=>false, :default=>false})
   -> 0.2840s
==  AddCustomFieldIsFilter: migrated (0.2840s) ================================
 
==  CreateWatchers: migrating =================================================
-- create_table(:watchers)
   -> 0.0820s
==  CreateWatchers: migrated (0.0820s) ========================================
 
==  CreateChangesetsIssues: migrating =========================================
-- create_table(:changesets_issues, {:id=>false})
   -> 0.0920s
-- add_index(:changesets_issues, [:changeset_id, :issue_id], {:unique=>true, :name=>:changesets_issues_ids})
   -> 0.2080s
==  CreateChangesetsIssues: migrated (0.3000s) ================================
 
==  RenameCommentToComments: migrating ========================================
==  RenameCommentToComments: migrated (0.2200s) ===============================
 
==  CreateIssueRelations: migrating ===========================================
-- create_table(:issue_relations)
   -> 0.1010s
==  CreateIssueRelations: migrated (0.1010s) ==================================
 
==  AddRelationsPermissions: migrating ========================================
==  AddRelationsPermissions: migrated (0.1380s) ===============================
 
==  SetLanguageLengthToFive: migrating ========================================
-- change_column(:users, :language, :string, {:limit=>5, :default=>""})
   -> 0.4550s
==  SetLanguageLengthToFive: migrated (0.4560s) ===============================
 
==  CreateBoards: migrating ===================================================
-- create_table(:boards)
   -> 0.1050s
-- add_index(:boards, [:project_id], {:name=>:boards_project_id})
   -> 0.1580s
==  CreateBoards: migrated (0.2640s) ==========================================
 
==  CreateMessages: migrating =================================================
-- create_table(:messages)
   -> 0.1000s
-- add_index(:messages, [:board_id], {:name=>:messages_board_id})
   -> 0.1440s
-- add_index(:messages, [:parent_id], {:name=>:messages_parent_id})
   -> 0.1570s
==  CreateMessages: migrated (0.4020s) ========================================
 
==  AddBoardsPermissions: migrating ===========================================
==  AddBoardsPermissions: migrated (0.1510s) ==================================
 
==  AllowNullVersionEffectiveDate: migrating ==================================
-- change_column(:versions, :effective_date, :date, {:default=>nil, :null=>true})
   -> 0.1010s
==  AllowNullVersionEffectiveDate: migrated (0.1010s) =========================
 
==  AddWikiDestroyPagePermission: migrating ===================================
==  AddWikiDestroyPagePermission: migrated (0.0610s) ==========================
 
==  AddWikiAttachmentsPermissions: migrating ==================================
==  AddWikiAttachmentsPermissions: migrated (0.1040s) =========================
 
==  AddProjectStatus: migrating ===============================================
-- add_column(:projects, :status, :integer, {:default=>1, :null=>false})
   -> 0.2250s
==  AddProjectStatus: migrated (0.2260s) ======================================
 
==  AddChangesRevision: migrating =============================================
-- add_column(:changes, :revision, :string)
   -> 0.1880s
==  AddChangesRevision: migrated (0.1880s) ====================================
 
==  AddChangesBranch: migrating ===============================================
-- add_column(:changes, :branch, :string)
   -> 0.1950s
==  AddChangesBranch: migrated (0.1950s) ======================================
 
==  AddChangesetsScmid: migrating =============================================
-- add_column(:changesets, :scmid, :string)
   -> 0.5070s
==  AddChangesetsScmid: migrated (0.5070s) ====================================
 
==  AddRepositoriesType: migrating ============================================
-- add_column(:repositories, :type, :string)
   -> 0.2700s
==  AddRepositoriesType: migrated (0.2790s) ===================================
 
==  AddRepositoriesChangesPermission: migrating ===============================
==  AddRepositoriesChangesPermission: migrated (0.0660s) ======================
 
==  AddVersionsWikiPageTitle: migrating =======================================
-- add_column(:versions, :wiki_page_title, :string)
   -> 0.2070s
==  AddVersionsWikiPageTitle: migrated (0.2070s) ==============================
 
==  AddIssueCategoriesAssignedToId: migrating =================================
-- add_column(:issue_categories, :assigned_to_id, :integer)
   -> 0.4170s
==  AddIssueCategoriesAssignedToId: migrated (0.4170s) ========================
 
==  AddRolesAssignable: migrating =============================================
-- add_column(:roles, :assignable, :boolean, {:default=>true})
   -> 0.2740s
==  AddRolesAssignable: migrated (0.2740s) ====================================
 
==  ChangeChangesetsCommitterLimit: migrating =================================
-- change_column(:changesets, :committer, :string, {:limit=>nil})
   -> 0.4730s
==  ChangeChangesetsCommitterLimit: migrated (0.4740s) ========================
 
==  AddRolesBuiltin: migrating ================================================
-- add_column(:roles, :builtin, :integer, {:default=>0, :null=>false})
   -> 0.2510s
==  AddRolesBuiltin: migrated (0.2510s) =======================================
 
==  InsertBuiltinRoles: migrating =============================================
==  InsertBuiltinRoles: migrated (0.4030s) ====================================
 
==  AddRolesPermissions: migrating ============================================
-- add_column(:roles, :permissions, :text)
   -> 0.2430s
==  AddRolesPermissions: migrated (0.2430s) ===================================
 
==  DropPermissions: migrating ================================================
-- drop_table(:permissions)
   -> 0.0300s
-- drop_table(:permissions_roles)
   -> 0.0380s
==  DropPermissions: migrated (0.0680s) =======================================
 
==  AddSettingsUpdatedOn: migrating ===========================================
-- add_column(:settings, :updated_on, :timestamp)
   -> 0.2040s
==  AddSettingsUpdatedOn: migrated (0.2730s) ==================================
 
==  AddCustomValueCustomizedIndex: migrating ==================================
-- add_index(:custom_values, [:customized_type, :customized_id], {:name=>:custom_values_customized})
   -> 0.1500s
==  AddCustomValueCustomizedIndex: migrated (0.1500s) =========================
 
==  CreateWikiRedirects: migrating ============================================
-- create_table(:wiki_redirects)
   -> 0.1190s
-- add_index(:wiki_redirects, [:wiki_id, :title], {:name=>:wiki_redirects_wiki_id_title})
   -> 0.3080s
==  CreateWikiRedirects: migrated (0.4270s) ===================================
 
==  CreateEnabledModules: migrating ===========================================
-- create_table(:enabled_modules)
   -> 0.1580s
-- add_index(:enabled_modules, [:project_id], {:name=>:enabled_modules_project_id})
   -> 0.1610s
==  CreateEnabledModules: migrated (0.3790s) ==================================
 
==  AddIssuesEstimatedHours: migrating ========================================
-- add_column(:issues, :estimated_hours, :float)
   -> 0.2390s
==  AddIssuesEstimatedHours: migrated (0.2390s) ===============================
 
==  ChangeAttachmentsContentTypeLimit: migrating ==============================
-- change_column(:attachments, :content_type, :string, {:limit=>nil})
   -> 0.3010s
==  ChangeAttachmentsContentTypeLimit: migrated (0.3010s) =====================
 
==  AddQueriesColumnNames: migrating ==========================================
-- add_column(:queries, :column_names, :text)
   -> 0.1880s
==  AddQueriesColumnNames: migrated (0.1880s) =================================
 
==  AddEnumerationsPosition: migrating ========================================
-- add_column(:enumerations, :position, :integer, {:default=>1})
   -> 0.4550s
==  AddEnumerationsPosition: migrated (0.4860s) ===============================
 
==  AddEnumerationsIsDefault: migrating =======================================
-- add_column(:enumerations, :is_default, :boolean, {:default=>false, :null=>false})
   -> 0.4990s
==  AddEnumerationsIsDefault: migrated (0.4990s) ==============================
 
==  AddAuthSourcesTls: migrating ==============================================
-- add_column(:auth_sources, :tls, :boolean, {:default=>false, :null=>false})
   -> 0.2000s
==  AddAuthSourcesTls: migrated (0.2000s) =====================================
 
==  AddMembersMailNotification: migrating =====================================
-- add_column(:members, :mail_notification, :boolean, {:default=>false, :null=>false})
   -> 0.1900s
==  AddMembersMailNotification: migrated (0.1900s) ============================
 
==  AllowNullPosition: migrating ==============================================
-- change_column(:issue_statuses, :position, :integer, {:default=>1, :null=>true})
   -> 0.1350s
-- change_column(:roles, :position, :integer, {:default=>1, :null=>true})
   -> 0.2830s
-- change_column(:trackers, :position, :integer, {:default=>1, :null=>true})
   -> 0.1650s
-- change_column(:boards, :position, :integer, {:default=>1, :null=>true})
   -> 0.1060s
-- change_column(:enumerations, :position, :integer, {:default=>1, :null=>true})
   -> 0.1310s
==  AllowNullPosition: migrated (0.8200s) =====================================
 
==  RemoveIssueStatusesHtmlColor: migrating ===================================
-- remove_column(:issue_statuses, :html_color)
   -> 0.2010s
==  RemoveIssueStatusesHtmlColor: migrated (0.2020s) ==========================
 
==  AddCustomFieldsPosition: migrating ========================================
-- add_column(:custom_fields, :position, :integer, {:default=>1})
   -> 0.2270s
==  AddCustomFieldsPosition: migrated (0.2330s) ===============================
 
==  AddUserPreferencesTimeZone: migrating =====================================
-- add_column(:user_preferences, :time_zone, :string)
   -> 0.2060s
==  AddUserPreferencesTimeZone: migrated (0.2060s) ============================
 
==  AddUsersType: migrating ===================================================
-- add_column(:users, :type, :string)
   -> 0.2820s
==  AddUsersType: migrated (0.3050s) ==========================================
 
==  CreateProjectsTrackers: migrating =========================================
-- create_table(:projects_trackers, {:id=>false})
   -> 0.1280s
-- add_index(:projects_trackers, :project_id, {:name=>:projects_trackers_project_id})
   -> 0.1740s
==  CreateProjectsTrackers: migrated (0.3070s) ================================
 
==  AddMessagesLocked: migrating ==============================================
-- add_column(:messages, :locked, :boolean, {:default=>false})
   -> 0.2070s
==  AddMessagesLocked: migrated (0.2080s) =====================================
 
==  AddMessagesSticky: migrating ==============================================
-- add_column(:messages, :sticky, :integer, {:default=>0})
   -> 0.2810s
==  AddMessagesSticky: migrated (0.2810s) =====================================
 
==  ChangeAuthSourcesAccountLimit: migrating ==================================
-- change_column(:auth_sources, :account, :string, {:limit=>nil})
   -> 0.6260s
==  ChangeAuthSourcesAccountLimit: migrated (0.6260s) =========================
 
==  AddRoleTrackerOldStatusIndexToWorkflows: migrating ========================
-- add_index(:workflows, [:role_id, :tracker_id, :old_status_id], {:name=>:wkfs_role_tracker_old_status})
   -> 0.3280s
==  AddRoleTrackerOldStatusIndexToWorkflows: migrated (0.3280s) ===============
 
==  AddCustomFieldsSearchable: migrating ======================================
-- add_column(:custom_fields, :searchable, :boolean, {:default=>false})
   -> 0.2730s
==  AddCustomFieldsSearchable: migrated (0.2730s) =============================
 
==  ChangeProjectsDescriptionToText: migrating ================================
-- change_column(:projects, :description, :text, {:null=>true, :default=>nil})
   -> 0.2410s
==  ChangeProjectsDescriptionToText: migrated (0.2410s) =======================
 
==  AddCustomFieldsDefaultValue: migrating ====================================
-- add_column(:custom_fields, :default_value, :text)
   -> 0.1950s
==  AddCustomFieldsDefaultValue: migrated (0.1950s) ===========================
 
==  AddAttachmentsDescription: migrating ======================================
-- add_column(:attachments, :description, :string)
   -> 0.1770s
==  AddAttachmentsDescription: migrated (0.1770s) =============================
 
==  ChangeVersionsNameLimit: migrating ========================================
-- change_column(:versions, :name, :string, {:limit=>nil})
   -> 0.2900s
==  ChangeVersionsNameLimit: migrated (0.2910s) ===============================
 
==  ChangeChangesetsRevisionToString: migrating ===============================
-- change_column(:changesets, :revision, :string, {:null=>false})
   -> 0.2590s
==  ChangeChangesetsRevisionToString: migrated (0.2600s) ======================
 
==  ChangeChangesFromRevisionToString: migrating ==============================
-- change_column(:changes, :from_revision, :string)
   -> 0.2740s
==  ChangeChangesFromRevisionToString: migrated (0.2750s) =====================
 
==  AddWikiPagesProtected: migrating ==========================================
-- add_column(:wiki_pages, :protected, :boolean, {:default=>false, :null=>false})
   -> 0.2140s
==  AddWikiPagesProtected: migrated (0.2140s) =================================
 
==  ChangeProjectsHomepageLimit: migrating ====================================
-- change_column(:projects, :homepage, :string, {:limit=>nil, :default=>""})
   -> 0.2750s
==  ChangeProjectsHomepageLimit: migrated (0.2750s) ===========================
 
==  AddWikiPagesParentId: migrating ===========================================
-- add_column(:wiki_pages, :parent_id, :integer, {:default=>nil})
   -> 0.1990s
==  AddWikiPagesParentId: migrated (0.1990s) ==================================
 
==  AddCommitAccessPermission: migrating ======================================
==  AddCommitAccessPermission: migrated (0.0050s) =============================
 
==  AddViewWikiEditsPermission: migrating =====================================
==  AddViewWikiEditsPermission: migrated (0.0060s) ============================
 
==  SetTopicAuthorsAsWatchers: migrating ======================================
==  SetTopicAuthorsAsWatchers: migrated (0.0290s) =============================
 
==  AddDeleteWikiPagesAttachmentsPermission: migrating ========================
==  AddDeleteWikiPagesAttachmentsPermission: migrated (0.0050s) ===============
 
==  AddChangesetsUserId: migrating ============================================
-- add_column(:changesets, :user_id, :integer, {:default=>nil})
   -> 0.2070s
==  AddChangesetsUserId: migrated (0.2070s) ===================================
 
==  PopulateChangesetsUserId: migrating =======================================
==  PopulateChangesetsUserId: migrated (0.0270s) ==============================
 
==  AddCustomFieldsEditable: migrating ========================================
-- add_column(:custom_fields, :editable, :boolean, {:default=>true})
   -> 0.2180s
==  AddCustomFieldsEditable: migrated (0.2190s) ===============================
 
==  SetCustomFieldsEditable: migrating ========================================
==  SetCustomFieldsEditable: migrated (0.0170s) ===============================
 
==  AddProjectsLftAndRgt: migrating ===========================================
-- add_column(:projects, :lft, :integer)
   -> 0.1990s
-- add_column(:projects, :rgt, :integer)
   -> 0.2340s
==  AddProjectsLftAndRgt: migrated (0.4330s) ==================================
 
==  BuildProjectsTree: migrating ==============================================
==  BuildProjectsTree: migrated (0.0240s) =====================================
 
==  RemoveProjectsProjectsCount: migrating ====================================
-- remove_column(:projects, :projects_count)
   -> 0.2070s
==  RemoveProjectsProjectsCount: migrated (0.2070s) ===========================
 
==  AddOpenIdAuthenticationTables: migrating ==================================
-- create_table(:open_id_authentication_associations, {:force=>true})
   -> 0.1280s
-- create_table(:open_id_authentication_nonces, {:force=>true})
   -> 0.0780s
==  AddOpenIdAuthenticationTables: migrated (0.2060s) =========================
 
==  AddIdentityUrlToUsers: migrating ==========================================
-- add_column(:users, :identity_url, :string)
   -> 0.2100s
==  AddIdentityUrlToUsers: migrated (0.2100s) =================================
 
==  AddWatchersUserIdTypeIndex: migrating =====================================
-- add_index(:watchers, [:user_id, :watchable_type], {:name=>:watchers_user_id_type})
   -> 0.1800s
==  AddWatchersUserIdTypeIndex: migrated (0.1800s) ============================
 
==  AddQueriesSortCriteria: migrating =========================================
-- add_column(:queries, :sort_criteria, :text)
   -> 0.1980s
==  AddQueriesSortCriteria: migrated (0.1980s) ================================
 
==  AddProjectsTrackersUniqueIndex: migrating =================================
-- add_index(:projects_trackers, [:project_id, :tracker_id], {:name=>:projects_trackers_unique, :unique=>true})
   -> 0.1670s
==  AddProjectsTrackersUniqueIndex: migrated (0.1720s) ========================
 
==  ExtendSettingsName: migrating =============================================
-- change_column(:settings, :name, :string, {:limit=>255, :default=>"", :null=>false})
   -> 0.2500s
==  ExtendSettingsName: migrated (0.2500s) ====================================
 
==  AddTypeToEnumerations: migrating ==========================================
-- add_column(:enumerations, :type, :string)
   -> 0.2710s
==  AddTypeToEnumerations: migrated (0.2720s) =================================
 
==  UpdateEnumerationsToSti: migrating ========================================
==  UpdateEnumerationsToSti: migrated (0.0090s) ===============================
 
==  AddActiveFieldToEnumerations: migrating ===================================
-- add_column(:enumerations, :active, :boolean, {:default=>true, :null=>false})
   -> 0.2490s
==  AddActiveFieldToEnumerations: migrated (0.2500s) ==========================
 
==  AddProjectToEnumerations: migrating =======================================
-- add_column(:enumerations, :project_id, :integer, {:null=>true, :default=>nil})
   -> 0.2170s
-- add_index(:enumerations, :project_id)
   -> 0.1760s
==  AddProjectToEnumerations: migrated (0.3930s) ==============================
 
==  AddParentIdToEnumerations: migrating ======================================
-- add_column(:enumerations, :parent_id, :integer, {:null=>true, :default=>nil})
   -> 0.2040s
==  AddParentIdToEnumerations: migrated (0.2040s) =============================
 
==  AddQueriesGroupBy: migrating ==============================================
-- add_column(:queries, :group_by, :string)
   -> 0.2310s
==  AddQueriesGroupBy: migrated (0.2310s) =====================================
 
==  CreateMemberRoles: migrating ==============================================
-- create_table(:member_roles)
   -> 0.1120s
==  CreateMemberRoles: migrated (0.1120s) =====================================
 
==  PopulateMemberRoles: migrating ============================================
==  PopulateMemberRoles: migrated (0.1330s) ===================================
 
==  DropMembersRoleId: migrating ==============================================
-- remove_column(:members, :role_id)
   -> 0.1920s
==  DropMembersRoleId: migrated (0.1920s) =====================================
 
==  FixMessagesStickyNull: migrating ==========================================
==  FixMessagesStickyNull: migrated (0.0030s) =================================
 
==  PopulateUsersType: migrating ==============================================
==  PopulateUsersType: migrated (0.0050s) =====================================
 
==  CreateGroupsUsers: migrating ==============================================
-- create_table(:groups_users, {:id=>false})
   -> 0.1770s
-- add_index(:groups_users, [:group_id, :user_id], {:unique=>true, :name=>:groups_users_ids})
   -> 0.2880s
==  CreateGroupsUsers: migrated (0.4650s) =====================================
 
==  AddMemberRolesInheritedFrom: migrating ====================================
-- add_column(:member_roles, :inherited_from, :integer)
   -> 0.2410s
==  AddMemberRolesInheritedFrom: migrated (0.2410s) ===========================
 
==  FixUsersCustomValues: migrating ===========================================
==  FixUsersCustomValues: migrated (0.0230s) ==================================
 
==  AddMissingIndexesToWorkflows: migrating ===================================
-- add_index(:workflows, :old_status_id)
   -> 0.1550s
-- add_index(:workflows, :role_id)
   -> 0.1660s
-- add_index(:workflows, :new_status_id)
   -> 0.1620s
==  AddMissingIndexesToWorkflows: migrated (0.4830s) ==========================
 
==  AddMissingIndexesToCustomFieldsProjects: migrating ========================
-- add_index(:custom_fields_projects, [:custom_field_id, :project_id])
   -> 0.1540s
==  AddMissingIndexesToCustomFieldsProjects: migrated (0.1540s) ===============
 
==  AddMissingIndexesToMessages: migrating ====================================
-- add_index(:messages, :last_reply_id)
   -> 0.2660s
-- add_index(:messages, :author_id)
   -> 0.3670s
==  AddMissingIndexesToMessages: migrated (0.6330s) ===========================
 
==  AddMissingIndexesToRepositories: migrating ================================
-- add_index(:repositories, :project_id)
   -> 0.2270s
==  AddMissingIndexesToRepositories: migrated (0.2280s) =======================
 
==  AddMissingIndexesToComments: migrating ====================================
-- add_index(:comments, [:commented_id, :commented_type])
   -> 0.2370s
-- add_index(:comments, :author_id)
   -> 0.1930s
==  AddMissingIndexesToComments: migrated (0.4320s) ===========================
 
==  AddMissingIndexesToEnumerations: migrating ================================
-- add_index(:enumerations, [:id, :type])
   -> 0.1950s
==  AddMissingIndexesToEnumerations: migrated (0.1960s) =======================
 
==  AddMissingIndexesToWikiPages: migrating ===================================
-- add_index(:wiki_pages, :wiki_id)
   -> 0.1670s
-- add_index(:wiki_pages, :parent_id)
   -> 0.1560s
==  AddMissingIndexesToWikiPages: migrated (0.3230s) ==========================
 
==  AddMissingIndexesToWatchers: migrating ====================================
-- add_index(:watchers, :user_id)
   -> 0.1900s
-- add_index(:watchers, [:watchable_id, :watchable_type])
   -> 0.2020s
==  AddMissingIndexesToWatchers: migrated (0.3930s) ===========================
 
==  AddMissingIndexesToAuthSources: migrating =================================
-- add_index(:auth_sources, [:id, :type])
   -> 0.1870s
==  AddMissingIndexesToAuthSources: migrated (0.1880s) ========================
 
==  AddMissingIndexesToDocuments: migrating ===================================
-- add_index(:documents, :category_id)
   -> 0.1910s
==  AddMissingIndexesToDocuments: migrated (0.1910s) ==========================
 
==  AddMissingIndexesToTokens: migrating ======================================
-- add_index(:tokens, :user_id)
   -> 0.1690s
==  AddMissingIndexesToTokens: migrated (0.1690s) =============================
 
==  AddMissingIndexesToChangesets: migrating ==================================
-- add_index(:changesets, :user_id)
   -> 0.1900s
-- add_index(:changesets, :repository_id)
   -> 0.1620s
==  AddMissingIndexesToChangesets: migrated (0.3520s) =========================
 
==  AddMissingIndexesToIssueCategories: migrating =============================
-- add_index(:issue_categories, :assigned_to_id)
   -> 0.1510s
==  AddMissingIndexesToIssueCategories: migrated (0.1510s) ====================
 
==  AddMissingIndexesToMemberRoles: migrating =================================
-- add_index(:member_roles, :member_id)
   -> 0.1960s
-- add_index(:member_roles, :role_id)
   -> 0.1780s
==  AddMissingIndexesToMemberRoles: migrated (0.3740s) ========================
 
==  AddMissingIndexesToBoards: migrating ======================================
-- add_index(:boards, :last_message_id)
   -> 0.1940s
==  AddMissingIndexesToBoards: migrated (0.1940s) =============================
 
==  AddMissingIndexesToUserPreferences: migrating =============================
-- add_index(:user_preferences, :user_id)
   -> 0.2440s
==  AddMissingIndexesToUserPreferences: migrated (0.2450s) ====================
 
==  AddMissingIndexesToIssues: migrating ======================================
-- add_index(:issues, :status_id)
   -> 0.2390s
-- add_index(:issues, :category_id)
   -> 0.1730s
-- add_index(:issues, :assigned_to_id)
   -> 0.1480s
-- add_index(:issues, :fixed_version_id)
   -> 0.1530s
-- add_index(:issues, :tracker_id)
   -> 0.1780s
-- add_index(:issues, :priority_id)
   -> 0.1650s
-- add_index(:issues, :author_id)
   -> 0.1580s
==  AddMissingIndexesToIssues: migrated (1.2141s) =============================
 
==  AddMissingIndexesToMembers: migrating =====================================
-- add_index(:members, :user_id)
   -> 0.1590s
-- add_index(:members, :project_id)
   -> 0.1790s
==  AddMissingIndexesToMembers: migrated (0.3380s) ============================
 
==  AddMissingIndexesToCustomFields: migrating ================================
-- add_index(:custom_fields, [:id, :type])
   -> 0.1480s
==  AddMissingIndexesToCustomFields: migrated (0.1480s) =======================
 
==  AddMissingIndexesToQueries: migrating =====================================
-- add_index(:queries, :project_id)
   -> 0.1500s
-- add_index(:queries, :user_id)
   -> 0.1570s
==  AddMissingIndexesToQueries: migrated (0.3070s) ============================
 
==  AddMissingIndexesToTimeEntries: migrating =================================
-- add_index(:time_entries, :activity_id)
   -> 0.1510s
-- add_index(:time_entries, :user_id)
   -> 0.1740s
==  AddMissingIndexesToTimeEntries: migrated (0.3260s) ========================
 
==  AddMissingIndexesToNews: migrating ========================================
-- add_index(:news, :author_id)
   -> 0.1830s
==  AddMissingIndexesToNews: migrated (0.1830s) ===============================
 
==  AddMissingIndexesToUsers: migrating =======================================
-- add_index(:users, [:id, :type])
   -> 0.2050s
-- add_index(:users, :auth_source_id)
   -> 0.1960s
==  AddMissingIndexesToUsers: migrated (0.4010s) ==============================
 
==  AddMissingIndexesToAttachments: migrating =================================
-- add_index(:attachments, [:container_id, :container_type])
   -> 0.2230s
-- add_index(:attachments, :author_id)
   -> 0.2340s
==  AddMissingIndexesToAttachments: migrated (0.4580s) ========================
 
==  AddMissingIndexesToWikiContents: migrating ================================
-- add_index(:wiki_contents, :author_id)
   -> 0.1960s
==  AddMissingIndexesToWikiContents: migrated (0.1960s) =======================
 
==  AddMissingIndexesToCustomValues: migrating ================================
-- add_index(:custom_values, :custom_field_id)
   -> 0.1600s
==  AddMissingIndexesToCustomValues: migrated (0.1600s) =======================
 
==  AddMissingIndexesToJournals: migrating ====================================
-- add_index(:journals, :user_id)
   -> 0.1910s
-- add_index(:journals, :journalized_id)
   -> 0.1590s
==  AddMissingIndexesToJournals: migrated (0.3500s) ===========================
 
==  AddMissingIndexesToIssueRelations: migrating ==============================
-- add_index(:issue_relations, :issue_from_id)
   -> 0.1430s
-- add_index(:issue_relations, :issue_to_id)
   -> 0.1430s
==  AddMissingIndexesToIssueRelations: migrated (0.2870s) =====================
 
==  AddMissingIndexesToWikiRedirects: migrating ===============================
-- add_index(:wiki_redirects, :wiki_id)
   -> 0.1620s
==  AddMissingIndexesToWikiRedirects: migrated (0.1630s) ======================
 
==  AddMissingIndexesToCustomFieldsTrackers: migrating ========================
-- add_index(:custom_fields_trackers, [:custom_field_id, :tracker_id])
   -> 0.1480s
==  AddMissingIndexesToCustomFieldsTrackers: migrated (0.1480s) ===============
 
==  AddActivityIndexes: migrating =============================================
-- add_index(:journals, :created_on)
   -> 0.1370s
-- add_index(:changesets, :committed_on)
   -> 0.1300s
-- add_index(:wiki_content_versions, :updated_on)
   -> 0.1610s
-- add_index(:messages, :created_on)
   -> 0.1350s
-- add_index(:issues, :created_on)
   -> 0.1970s
-- add_index(:news, :created_on)
   -> 0.3400s
-- add_index(:attachments, :created_on)
   -> 0.4370s
-- add_index(:documents, :created_on)
   -> 0.1950s
-- add_index(:time_entries, :created_on)
   -> 0.1580s
==  AddActivityIndexes: migrated (1.8911s) ====================================
 
==  AddVersionsStatus: migrating ==============================================
-- add_column(:versions, :status, :string, {:default=>"open"})
   -> 0.2200s
==  AddVersionsStatus: migrated (0.2450s) =====================================
 
==  AddViewIssuesPermission: migrating ========================================
==  AddViewIssuesPermission: migrated (0.0390s) ===============================
 
==  AddDefaultDoneRatioToIssueStatus: migrating ===============================
-- add_column(:issue_statuses, :default_done_ratio, :integer)
   -> 0.1890s
==  AddDefaultDoneRatioToIssueStatus: migrated (0.1890s) ======================
 
==  AddVersionsSharing: migrating =============================================
-- add_column(:versions, :sharing, :string, {:default=>"none", :null=>false})
   -> 0.1720s
-- add_index(:versions, :sharing)
   -> 0.1660s
==  AddVersionsSharing: migrated (0.3380s) ====================================
 
==  AddLftAndRgtIndexesToProjects: migrating ==================================
-- add_index(:projects, :lft)
   -> 0.1640s
-- add_index(:projects, :rgt)
   -> 0.1980s
==  AddLftAndRgtIndexesToProjects: migrated (0.3630s) =========================
 
==  AddIndexToSettingsName: migrating =========================================
-- add_index(:settings, :name)
   -> 0.2090s
==  AddIndexToSettingsName: migrated (0.2090s) ================================
 
==  AddIndexesToIssueStatus: migrating ========================================
-- add_index(:issue_statuses, :position)
   -> 0.2100s
-- add_index(:issue_statuses, :is_closed)
   -> 0.2060s
-- add_index(:issue_statuses, :is_default)
   -> 0.2090s
==  AddIndexesToIssueStatus: migrated (0.6250s) ===============================
 
==  RemoveEnumerationsOpt: migrating ==========================================
-- remove_column(:enumerations, :opt)
   -> 0.2190s
==  RemoveEnumerationsOpt: migrated (0.2190s) =================================
 
==  ChangeWikiContentsTextLimit: migrating ====================================
-- change_column(:wiki_contents, :text, :text, {:limit=>16777216})
   -> 0.2600s
-- change_column(:wiki_content_versions, :data, :binary, {:limit=>16777216})
   -> 0.2030s
==  ChangeWikiContentsTextLimit: migrated (0.4630s) ===========================
 
==  ChangeUsersMailNotificationToString: migrating ============================
-- rename_column(:users, :mail_notification, :mail_notification_bool)
   -> 0.2290s
-- add_column(:users, :mail_notification, :string, {:default=>"", :null=>false})
   -> 0.1780s
-- remove_column(:users, :mail_notification_bool)
   -> 0.3110s
==  ChangeUsersMailNotificationToString: migrated (0.7520s) ===================
 
==  UpdateMailNotificationValues: migrating ===================================
==  UpdateMailNotificationValues: migrated (0.0000s) ==========================
 
==  AddIndexOnChangesetsScmid: migrating ======================================
-- add_index(:changesets, [:repository_id, :scmid], {:name=>:changesets_repos_scmid})
   -> 0.1570s
==  AddIndexOnChangesetsScmid: migrated (0.1570s) =============================
 
==  AddIssuesNestedSetsColumns: migrating =====================================
-- add_column(:issues, :parent_id, :integer, {:default=>nil})
   -> 0.1820s
-- add_column(:issues, :root_id, :integer, {:default=>nil})
   -> 0.2280s
-- add_column(:issues, :lft, :integer, {:default=>nil})
   -> 0.3210s
-- add_column(:issues, :rgt, :integer, {:default=>nil})
   -> 0.2550s
==  AddIssuesNestedSetsColumns: migrated (0.9931s) ============================
 
==  AddIndexOnIssuesNestedSet: migrating ======================================
-- add_index(:issues, [:root_id, :lft, :rgt])
   -> 0.1710s
==  AddIndexOnIssuesNestedSet: migrated (0.1720s) =============================
 
==  ChangeChangesPathLengthLimit: migrating ===================================
-- change_column(:changes, :path, :text, {:default=>nil, :null=>true})
   -> 0.3550s
-- change_column(:changes, :path, :text, {:null=>false})
   -> 0.3350s
-- change_column(:changes, :from_path, :text)
   -> 0.2300s
==  ChangeChangesPathLengthLimit: migrated (0.9221s) ==========================
 
==  EnableCalendarAndGanttModulesWhereAppropriate: migrating ==================
==  EnableCalendarAndGanttModulesWhereAppropriate: migrated (0.0540s) =========
 
==  AddUniqueIndexOnMembers: migrating ========================================
-- add_index(:members, [:user_id, :project_id], {:unique=>true})
   -> 0.1980s
==  AddUniqueIndexOnMembers: migrated (0.2100s) ===============================
 
==  AddCustomFieldsVisible: migrating =========================================
-- add_column(:custom_fields, :visible, :boolean, {:null=>false, :default=>true})
   -> 0.3560s
==  AddCustomFieldsVisible: migrated (0.3600s) ================================
 
==  ChangeProjectsNameLimit: migrating ========================================
-- change_column(:projects, :name, :string, {:limit=>nil, :default=>"", :null=>false})
   -> 0.2720s
==  ChangeProjectsNameLimit: migrated (0.2720s) ===============================
 
==  ChangeProjectsIdentifierLimit: migrating ==================================
-- change_column(:projects, :identifier, :string, {:limit=>nil})
   -> 0.2850s
==  ChangeProjectsIdentifierLimit: migrated (0.2850s) =========================
 
==  AddWorkflowsAssigneeAndAuthor: migrating ==================================
-- add_column(:workflows, :assignee, :boolean, {:null=>false, :default=>false})
   -> 0.2640s
-- add_column(:workflows, :author, :boolean, {:null=>false, :default=>false})
   -> 0.3300s
==  AddWorkflowsAssigneeAndAuthor: migrated (0.6590s) =========================
 
==  AddUsersSalt: migrating ===================================================
-- add_column(:users, :salt, :string, {:limit=>64})
   -> 0.3450s
==  AddUsersSalt: migrated (0.3450s) ==========================================
 
==  SaltUserPasswords: migrating ==============================================
-- Salting user passwords, this may take some time...
   -> 0.1510s
==  SaltUserPasswords: migrated (0.1510s) =====================================
 
==  AddRepositoriesPathEncoding: migrating ====================================
-- add_column(:repositories, :path_encoding, :string, {:limit=>64, :default=>nil})
   -> 0.2170s
==  AddRepositoriesPathEncoding: migrated (0.2170s) ===========================
 
==  ChangeRepositoriesPasswordLimit: migrating ================================
-- change_column(:repositories, :password, :string, {:limit=>nil, :default=>""})
   -> 0.3410s
==  ChangeRepositoriesPasswordLimit: migrated (0.3420s) =======================
 
==  ChangeAuthSourcesAccountPasswordLimit: migrating ==========================
-- change_column(:auth_sources, :account_password, :string, {:limit=>nil, :default=>""})
   -> 0.5840s
==  ChangeAuthSourcesAccountPasswordLimit: migrated (0.5840s) =================
 
==  ChangeJournalDetailsValuesToText: migrating ===============================
-- change_column(:journal_details, :old_value, :text)
   -> 0.2440s
-- change_column(:journal_details, :value, :text)
   -> 0.2900s
==  ChangeJournalDetailsValuesToText: migrated (0.5340s) ======================
 
==  AddRepositoriesLogEncoding: migrating =====================================
-- add_column(:repositories, :log_encoding, :string, {:limit=>64, :default=>nil})
   -> 0.2020s
==  AddRepositoriesLogEncoding: migrated (0.2020s) ============================
 
==  CopyRepositoriesLogEncoding: migrating ====================================
==  CopyRepositoriesLogEncoding: migrated (0.0240s) ===========================
 
==  AddIndexToUsersType: migrating ============================================
-- add_index(:users, :type)
   -> 0.2820s
==  AddIndexToUsersType: migrated (0.2820s) ===================================
 
==  AddRolesIssuesVisibility: migrating =======================================
-- add_column(:roles, :issues_visibility, :string, {:limit=>30, :default=>"default", :null=>false})
   -> 0.2060s
==  AddRolesIssuesVisibility: migrated (0.2060s) ==============================
 
==  AddIssuesIsPrivate: migrating =============================================
-- add_column(:issues, :is_private, :boolean, {:default=>false, :null=>false})
   -> 0.2390s
==  AddIssuesIsPrivate: migrated (0.2400s) ====================================
 
==  AddRepositoriesExtraInfo: migrating =======================================
-- add_column(:repositories, :extra_info, :text)
   -> 0.1950s
==  AddRepositoriesExtraInfo: migrated (0.1950s) ==============================
 
==  CreateChangesetParents: migrating =========================================
-- create_table(:changeset_parents, {:id=>false})
   -> 0.1440s
-- add_index(:changeset_parents, [:changeset_id], {:unique=>false, :name=>:changeset_parents_changeset_ids})
   -> 0.1610s
-- add_index(:changeset_parents, [:parent_id], {:unique=>false, :name=>:changeset_parents_parent_ids})
   -> 0.1400s
==  CreateChangesetParents: migrated (0.4470s) ================================
 
==  AddUniqueIndexToIssueRelations: migrating =================================
-- add_index(:issue_relations, [:issue_from_id, :issue_to_id], {:unique=>true})
   -> 0.1810s
==  AddUniqueIndexToIssueRelations: migrated (0.2080s) ========================
 
==  AddRepositoriesIdentifier: migrating ======================================
-- add_column(:repositories, :identifier, :string)
   -> 0.2950s
==  AddRepositoriesIdentifier: migrated (0.2960s) =============================
 
==  AddRepositoriesIsDefault: migrating =======================================
-- add_column(:repositories, :is_default, :boolean, {:default=>false})
   -> 0.2280s
==  AddRepositoriesIsDefault: migrated (0.2280s) ==============================
 
==  SetDefaultRepositories: migrating =========================================
==  SetDefaultRepositories: migrated (0.0060s) ================================
 
==  AddCustomFieldsMultiple: migrating ========================================
-- add_column(:custom_fields, :multiple, :boolean, {:default=>false})
   -> 0.2290s
==  AddCustomFieldsMultiple: migrated (0.2290s) ===============================
 
==  ChangeUsersLoginLimit: migrating ==========================================
-- change_column(:users, :login, :string, {:limit=>nil, :default=>"", :null=>false})
   -> 0.3390s
==  ChangeUsersLoginLimit: migrated (0.3410s) =================================
 
==  ChangeAttachmentsContainerDefaults: migrating =============================
-- remove_index(:attachments, [:container_id, :container_type])
   -> 0.1730s
-- change_column(:attachments, :container_id, :integer, {:default=>nil, :null=>true})
   -> 0.3140s
-- change_column(:attachments, :container_type, :string, {:limit=>30, :default=>nil, :null=>true})
   -> 0.2750s
-- add_index(:attachments, [:container_id, :container_type])
   -> 0.2200s
==  ChangeAttachmentsContainerDefaults: migrated (0.9951s) ====================
 
==  AddAuthSourcesFilter: migrating ===========================================
-- add_column(:auth_sources, :filter, :string)
   -> 0.2200s
==  AddAuthSourcesFilter: migrated (0.2200s) ==================================
 
==  ChangeRepositoriesToFullSti: migrating ====================================
==  ChangeRepositoriesToFullSti: migrated (0.0020s) ===========================
 
==  AddTrackersFieldsBits: migrating ==========================================
-- add_column(:trackers, :fields_bits, :integer, {:default=>0})
   -> 0.2180s
==  AddTrackersFieldsBits: migrated (0.2190s) =================================
 
==  AddAuthSourcesTimeout: migrating ==========================================
-- add_column(:auth_sources, :timeout, :integer)
   -> 0.1960s
==  AddAuthSourcesTimeout: migrated (0.1960s) =================================
 
==  AddWorkflowsType: migrating ===============================================
-- add_column(:workflows, :type, :string, {:limit=>30})
   -> 0.2830s
==  AddWorkflowsType: migrated (0.2830s) ======================================
 
==  UpdateWorkflowsToSti: migrating ===========================================
==  UpdateWorkflowsToSti: migrated (0.0040s) ==================================
 
==  AddWorkflowsRuleFields: migrating =========================================
-- add_column(:workflows, :field_name, :string, {:limit=>30})
   -> 0.2180s
-- add_column(:workflows, :rule, :string, {:limit=>30})
   -> 0.2550s
==  AddWorkflowsRuleFields: migrated (0.4740s) ================================
 
==  AddBoardsParentId: migrating ==============================================
-- add_column(:boards, :parent_id, :integer)
   -> 0.2290s
==  AddBoardsParentId: migrated (0.2290s) =====================================
 
==  AddJournalsPrivateNotes: migrating ========================================
-- add_column(:journals, :private_notes, :boolean, {:default=>false, :null=>false})
   -> 0.2410s
==  AddJournalsPrivateNotes: migrated (0.2430s) ===============================
 
==  AddEnumerationsPositionName: migrating ====================================
-- add_column(:enumerations, :position_name, :string, {:limit=>30})
   -> 0.1940s
==  AddEnumerationsPositionName: migrated (0.1940s) ===========================
 
==  PopulateEnumerationsPositionName: migrating ===============================
==  PopulateEnumerationsPositionName: migrated (0.0060s) ======================
 
 
 

初期データをセット

D:\Tools\redmine-2.2.0>rake load_default_data RAILS_ENV="production"
 
Select language: ar, bg, bs, ca, cs, da, de, el, en, en-GB, es, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no,
pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]ja
====================================
Default configuration data loaded.
 
Note: The rake task load_default_data has been deprecated, please use the replacement version redmine:load_default_data
 
D:\Tools\redmine-2.2.0>
 
 

セキュリティ情報データを作成

D:\Tools\redmine-2.2.0>rake generate_session_store
 
Note: The rake task generate_session_store has been deprecated, please use the replacement version generate_secret_token
 
D:\Tools\redmine-2.2.0>
 
 

メールアドレスの設定を行う

config/settings.ymlで以下を変更
mail_from:
  default: admin@localhost.com
 
 

configuration.yml.exampleをコピーしてconfiguration.ymlを作成し以下を追加
default
default:
  # Outgoing emails configuration (see examples above)
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: localhost
      port: 25
      domain: localhost.com
      # authentication: :login
      # user_name: "admin@localhost.com"
      # password: "redmine"
 
 

production
production:
   email_delivery:
     delivery_method: :smtp
     smtp_settings:
       address: localhost.com
       port: 25
       domain: localhost.com
 
 

起動

D:\Tools\redmine-2.2.0>ruby script/rails server webrick -e production
=> Booting WEBrick
=> Rails 3.2.9 application starting in production on http://0.0.0.0:3000
=> Call with -d to detach
=> Ctrl-C to shutdown server
C:/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `block in require': iconv will be deprecated in the future, use String#encode instead.
[2012-12-25 00:36:01] INFO  WEBrick 1.3.1
[2012-12-25 00:36:01] INFO  ruby 1.9.3 (2012-11-10) [i386-mingw32]
[2012-12-25 00:36:01] INFO  WEBrick::HTTPServer#start: pid=9828 port=3000
 
 

起動画面はhttp://localhost:3000でアクセスできる。


admin/adminでログイン

管理者はadmin/adminで認証できる
アカウント管理画面に移動するのでメールアドレスや表記を日本語へ変更する
保存が確定完了した場合は日本語の表記などに切り替わる

起動バッチなんかを用意して任意で実行する




最終更新:2012年12月28日 14:55