SlideShare a Scribd company logo
1 of 12
Download to read offline
バージョン管理システム
比較資料
2013/12/22
鈴木 聡

2013/12/22   Rev.2
Git, Mercurial, Subversion
利点と欠点

2013/12/22   Rev.2
Git
●

利点
—

—

●

動作速度が最も速いため、大規模 ( 数 100 万行を超
える ) なソースコードを管理するのに向いている
行単位の追跡(検索)機能があり、コードのコピー
を追跡できる

欠点
—

Git 固有の動作に慣れる必要がある
●

—
—

ステージング、ブランチ = ポインタ、等々・・・

GUI の完成度が今一つ
コミット時に変更ファイル全体を記録するため、リ
ポジトリが肥大化しやすい
2013/12/22   Rev.2
Mercurial
●

利点
—

—

動作がシンプルであるため、分散型 VCS 中では最も
学習コストが低い
動作環境を選ばず、完成度の高い GUI が使用できる
●

●

TortoiseHg Workbench

欠点
—

知名度が低く、情報が少ない

—

Git に比べて動作が遅い

2013/12/22   Rev.2
Subversion
●

利点
—

—

●

バイナリファイルを差分で記録するため、リポジト
リの肥大化を抑えられる
ファイルのロック(排他制御)が行える

欠点
—

—

操作の都度、サーバへのアクセスが発生するため、
動作速度が非常に遅い
機能面で現世代の VCS に劣る
●

ローカルコミットが行えない
—

将来的には「 Checkpoints 」という名称で実装予定だが・・・
2013/12/22   Rev.2
比較表
比較項目
動作速度
機能
学習コスト

GUI フロントエンド
ドキュメント管理

Git

Mercurial

Subversion

◎
◎
×
○
△

○
◎
○
◎
△

×
△
◎
△
◎
2013/12/22   Rev.2
まとめ
●

小、中規模のソース管理には Mercurial
—
—

●

数 100 万行の規模でも、開発環境に Windows を使わ
なければ問題なはい

大規模なソース管理には Git
—

●

大きな欠点もなく、導入しやすい

使い勝手はさておき、動作速度が重要な場合

Word/Excel など、自動マージできないドキュメ
ントの管理には Subversion
2013/12/22   Rev.2
Git と Merurial の比較

2013/12/22   Rev.2
リポジトリサイズ比較
●

紅桜 ( サクラエディタの派生版)リポジトリ
—

ファイル数 708 個

—

ソースコード行数 17 万行 ( 有効行は 11 万行 )

—

チェンジセット数 1191 個
Git
リポジトリ サイズ

Mercurial

61.8 MB

9.3 MB

2013/12/22   Rev.2
速度比較
●

紅桜のソースコード (708 ファイル、 17 万行 )
操作

Git

Mercurial

Git に対する
Mercurial 処理時間

status

0.118 秒

0.273 秒

2.3倍

5.631 秒

5.105 秒

0.9倍

status

0.125 秒

0.264 秒

2.1倍

commit

0.247 秒

0.372 秒

1.5倍

(708ファイル追加前)

add + commit
(708ファイル新規追加)
(8ファイル変更)
(8ファイル変更)

2013/12/22   Rev.2
Git
行単位の移動追跡機能
・ Mercurial の annotate 出力
kobake
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv
suzzsegv

0
500
500
500
500
500
500
500
500
500
500
500
500
500
500
500

Sun
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed
Wed

Sep
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct
Oct

28
24
24
24
24
24
24
24
24
24
24
24
24
24
24
24

09:39:47
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44

2008
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012
2012

+0000
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900

sakura_core/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:
sakura_core/env/CShareData.cpp:

@brief タイプ別設定の初期化処理

/*!

@date 2005.01.30 genta CShareData::Init() から分離.
*/
void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData)
{
CType* table[] = {
new CType_Basis(),
// 基本
new CType_Text(),
// テキスト
new CType_Cpp(),
//C/C++
new CType_Java(),
//Java
new CType_Asm(),
// アセンブラ
new CType_Ini(),
// 設定ファイル
};
assert( 1 <= MAX_TYPES );

・ Git の blame 出力
^b8b49f8
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae

sakura_core/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp

(kobake
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki

Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi

2008-09-28
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24

09:39:47
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44

+0000
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900

946)
947)
948)
949)
950)
951)
952)
953)
954)
955)
956)
957)
958)
959)
960)
961)

/*!

@brief タイプ別設定の初期化処理

@date 2005.01.30 genta CShareData::Init() から分離.
*/
void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData)
{
CType* table[] = {
new CType_Basis(),
// 基本
new CType_Text(),
// テキスト
new CType_Cpp(),
//C/C++
new CType_Java(),
//Java
new CType_Asm(),
// アセンブラ
new CType_Ini(),
// 設定ファイル
};
assert( 1 <= MAX_TYPES );

2013/12/22   Rev.2
Git
行単位の移動追跡機能
・ Git の blame 出力 ( 通常出力 )
^b8b49f8
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae
f1236fae

sakura_core/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp

(kobake
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki
(Suzuki

Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi
Satoshi

2008-09-28
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24
2012-10-24

09:39:47
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44
22:02:44

+0000
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900
+0900

946)
947)
948)
949)
950)
951)
952)
953)
954)
955)
956)
957)
958)
959)
960)
961)

/*!

@brief タイプ別設定の初期化処理

@date 2005.01.30 genta CShareData::Init() から分離.
*/
void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData)
{
CType* table[] = {
new CType_Basis(),
// 基本
new CType_Text(),
// テキスト
new CType_Cpp(),
//C/C++
new CType_Java(),
//Java
new CType_Asm(),
// アセンブラ
new CType_Ini(),
// 設定ファイル
};
assert( 1 <= MAX_TYPES );

・ Git の blame 出力 (-C オプションをつけた場合 )
^b8b49f8
f1236fae
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
^b8b49f8
f1236fae
f1236fae
^b8b49f8
^b8b49f8
ba97624a

sakura_core/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/env/CShareData.cpp
sakura_core/env/CShareData.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp
sakura_core/types/CType.cpp

(kobake
(Suzuki Satoshi
(kobake
(kobake
(kobake
(kobake
(kobake
(kobake
(kobake
(kobake
(kobake
(Suzuki Satoshi
(Suzuki Satoshi
(kobake
(kobake
(moca_skr

2008-09-28
2012-10-24
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2008-09-28
2012-10-24
2012-10-24
2008-09-28
2008-09-28
2010-07-07

09:39:47
22:02:44
09:39:47
09:39:47
09:39:47
09:39:47
09:39:47
09:39:47
09:39:47
09:39:47
09:39:47
22:02:44
22:02:44
09:39:47
09:39:47
16:50:21

+0000
+0900
+0000
+0000
+0000
+0000
+0000
+0000
+0000
+0000
+0000
+0900
+0900
+0000
+0000
+0000

946)
947)
948)
949)
950)
951)
952)
953)
954)
955)
956)
957)
958)
959)
960)
961)

/*!

@brief タイプ別設定の初期化処理

@date 2005.01.30 genta CShareData::Init() から分離.
*/
void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData)
{
CType* table[] = {
new CType_Basis(),
// 基本
new CType_Text(),
// テキスト
new CType_Cpp(),
//C/C++
new CType_Java(),
//Java
new CType_Asm(),
// アセンブラ
new CType_Ini(),
// 設定ファイル
};
assert( 1 <= MAX_TYPES );

2013/12/22   Rev.2

More Related Content

What's hot

ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
続・モジュール / Introduction to C++ modules (part 2)
続・モジュール / Introduction to C++ modules (part 2)続・モジュール / Introduction to C++ modules (part 2)
続・モジュール / Introduction to C++ modules (part 2)TetsuroMatsumura
 
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】WESEEKWESEEK
 
Utmをつくってみた202001
Utmをつくってみた202001Utmをつくってみた202001
Utmをつくってみた202001Takamune Konishi
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService PrincipalToru Makabe
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話Koichiro Matsuoka
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay都元ダイスケ Miyamoto
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAkihiro Kuwano
 
.NETアプリケーションのクラウド最適化
.NETアプリケーションのクラウド最適化.NETアプリケーションのクラウド最適化
.NETアプリケーションのクラウド最適化Takeshi Fukuhara
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメYoji Kanno
 
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?実践的な設計って、なんだろう?
実践的な設計って、なんだろう?増田 亨
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところY Watanabe
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!mosa siru
 
Easybuggy(バグ)の召し上がり方
Easybuggy(バグ)の召し上がり方Easybuggy(バグ)の召し上がり方
Easybuggy(バグ)の召し上がり方広平 田村
 
GitLab CI/CD パイプライン
GitLab CI/CD パイプラインGitLab CI/CD パイプライン
GitLab CI/CD パイプラインTetsurou Yano
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけらAtsushi Nakamura
 

What's hot (20)

ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
ひと漕ぎで二度おいしい!? Flutterを使ったモバイルアプリ開発への期待と実態と付き合い方(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
続・モジュール / Introduction to C++ modules (part 2)
続・モジュール / Introduction to C++ modules (part 2)続・モジュール / Introduction to C++ modules (part 2)
続・モジュール / Introduction to C++ modules (part 2)
 
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】
Stripeを使った簡単なサブスク型課金サービスの作り方【WESEEK Tech Conf #15】
 
Utmをつくってみた202001
Utmをつくってみた202001Utmをつくってみた202001
Utmをつくってみた202001
 
3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal3分でわかるAzureでのService Principal
3分でわかるAzureでのService Principal
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDayマイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
 
GitLabのAutoDevOpsを試してみた
GitLabのAutoDevOpsを試してみたGitLabのAutoDevOpsを試してみた
GitLabのAutoDevOpsを試してみた
 
Docker Compose 徹底解説
Docker Compose 徹底解説Docker Compose 徹底解説
Docker Compose 徹底解説
 
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティスAWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
 
.NETアプリケーションのクラウド最適化
.NETアプリケーションのクラウド最適化.NETアプリケーションのクラウド最適化
.NETアプリケーションのクラウド最適化
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
 
実践的な設計って、なんだろう?
実践的な設計って、なんだろう?実践的な設計って、なんだろう?
実践的な設計って、なんだろう?
 
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020Sum awsloft tko-iotloft-10-lt4-may-2020
Sum awsloft tko-iotloft-10-lt4-may-2020
 
Easybuggy(バグ)の召し上がり方
Easybuggy(バグ)の召し上がり方Easybuggy(バグ)の召し上がり方
Easybuggy(バグ)の召し上がり方
 
GitLab CI/CD パイプライン
GitLab CI/CD パイプラインGitLab CI/CD パイプライン
GitLab CI/CD パイプライン
 
入門!Jenkins
入門!Jenkins入門!Jenkins
入門!Jenkins
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 

Viewers also liked

統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)Taiji Suzuki
 
大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方hibiki443
 
リソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策についてリソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策についてgeechs inc. / geechs株式会社
 
いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0Masakazu Matsushita
 
Tortoise hgのすすめ
Tortoise hgのすすめTortoise hgのすすめ
Tortoise hgのすすめsuzzsegv
 
はじめようGit
はじめようGitはじめようGit
はじめようGittechscore
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門to_ueda
 
Gitのよく使うコマンド
Gitのよく使うコマンドGitのよく使うコマンド
Gitのよく使うコマンドYUKI Kaoru
 
バージョン管理のワークフロー
バージョン管理のワークフローバージョン管理のワークフロー
バージョン管理のワークフローadd20
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜Takashi Uemura
 
デザイナのためのGit入門
デザイナのためのGit入門デザイナのためのGit入門
デザイナのためのGit入門dsuke Takaoka
 
Brussels Spark Meetup Oct 30, 2015: Spark After Dark 1.5:  Real-time, Advanc...
Brussels Spark Meetup Oct 30, 2015:  Spark After Dark 1.5:  Real-time, Advanc...Brussels Spark Meetup Oct 30, 2015:  Spark After Dark 1.5:  Real-time, Advanc...
Brussels Spark Meetup Oct 30, 2015: Spark After Dark 1.5:  Real-time, Advanc...Chris Fregly
 
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)Takayori Takamoto
 
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社Puppet
 
【kintone】ノンプログラミングで家計簿アプリをつくろう!
【kintone】ノンプログラミングで家計簿アプリをつくろう!【kintone】ノンプログラミングで家計簿アプリをつくろう!
【kintone】ノンプログラミングで家計簿アプリをつくろう!geechs inc. / geechs株式会社
 
アセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみるアセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみるRYUTARO OSAFUNE
 
ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析新潟コンサルタント横田秀珠
 

Viewers also liked (20)

統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
 
大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方
 
リソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策についてリソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策について
 
いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0
 
Tortoise hgのすすめ
Tortoise hgのすすめTortoise hgのすすめ
Tortoise hgのすすめ
 
はじめようGit
はじめようGitはじめようGit
はじめようGit
 
15分でわかるGit入門
15分でわかるGit入門15分でわかるGit入門
15分でわかるGit入門
 
Gitのよく使うコマンド
Gitのよく使うコマンドGitのよく使うコマンド
Gitのよく使うコマンド
 
バージョン管理のワークフロー
バージョン管理のワークフローバージョン管理のワークフロー
バージョン管理のワークフロー
 
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
もしWordPressユーザーがGitを使ったら 〜WordPressテーマを共同編集しよう〜
 
デザイナのためのGit入門
デザイナのためのGit入門デザイナのためのGit入門
デザイナのためのGit入門
 
いつやるの?Git入門
いつやるの?Git入門いつやるの?Git入門
いつやるの?Git入門
 
Brussels Spark Meetup Oct 30, 2015: Spark After Dark 1.5:  Real-time, Advanc...
Brussels Spark Meetup Oct 30, 2015:  Spark After Dark 1.5:  Real-time, Advanc...Brussels Spark Meetup Oct 30, 2015:  Spark After Dark 1.5:  Real-time, Advanc...
Brussels Spark Meetup Oct 30, 2015: Spark After Dark 1.5:  Real-time, Advanc...
 
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)
野外センサネットワークに関する開発研究(東京農工大 大島浩太先生)
 
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社
シスコシステムズ製品のPuppet 対応 - 吉原大輔、シスコシステムズ合同会社
 
【kintone】ノンプログラミングで家計簿アプリをつくろう!
【kintone】ノンプログラミングで家計簿アプリをつくろう!【kintone】ノンプログラミングで家計簿アプリをつくろう!
【kintone】ノンプログラミングで家計簿アプリをつくろう!
 
「オルタンシア・サーガ」開発の裏側
「オルタンシア・サーガ」開発の裏側「オルタンシア・サーガ」開発の裏側
「オルタンシア・サーガ」開発の裏側
 
Oracle R Enterprise の使い方
Oracle R Enterprise の使い方Oracle R Enterprise の使い方
Oracle R Enterprise の使い方
 
アセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみるアセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみる
 
ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析
 

Similar to バージョン管理システム比較資料

git入門(講義っぽく)
git入門(講義っぽく)git入門(講義っぽく)
git入門(講義っぽく)kataware
 
Git勉強会資料
Git勉強会資料Git勉強会資料
Git勉強会資料Kenji Takei
 
バージョン管理とGit
バージョン管理とGitバージョン管理とGit
バージョン管理とGitsinsoku listy
 
20101022 構成管理勉強会資料
20101022 構成管理勉強会資料20101022 構成管理勉強会資料
20101022 構成管理勉強会資料Atsushi Takayasu
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!ymmt
 
20130608 git-0
20130608 git-020130608 git-0
20130608 git-0Kasu Unko
 
Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Koji Shinba
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitSeiya Mizuno
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwellsinsoku listy
 
XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用賢次 海老原
 
Google borg と コンテナベース分散システムデザインパターン
Google borg と コンテナベース分散システムデザインパターンGoogle borg と コンテナベース分散システムデザインパターン
Google borg と コンテナベース分散システムデザインパターンktateish
 
JiraとConfluenceのTips集
JiraとConfluenceのTips集JiraとConfluenceのTips集
JiraとConfluenceのTips集Hiroshi Ohnuki
 
第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版Ryosuke MATSUMOTO
 
Gitの基本コマンド
Gitの基本コマンドGitの基本コマンド
Gitの基本コマンド晋 小沼
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Colin Charles
 
Gitごにょごにょ【概要編】
Gitごにょごにょ【概要編】Gitごにょごにょ【概要編】
Gitごにょごにょ【概要編】Kazuki Shingai
 
VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 Hiro Yoshioka
 

Similar to バージョン管理システム比較資料 (20)

git入門(講義っぽく)
git入門(講義っぽく)git入門(講義っぽく)
git入門(講義っぽく)
 
Git勉強会資料
Git勉強会資料Git勉強会資料
Git勉強会資料
 
バージョン管理とGit
バージョン管理とGitバージョン管理とGit
バージョン管理とGit
 
20101022 構成管理勉強会資料
20101022 構成管理勉強会資料20101022 構成管理勉強会資料
20101022 構成管理勉強会資料
 
Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!Git & GitHub & kintone でウルトラハッピー!
Git & GitHub & kintone でウルトラハッピー!
 
dvcs-kyoto
dvcs-kyotodvcs-kyoto
dvcs-kyoto
 
2013 Ignite UI 最新情報 in 岡山
2013 Ignite UI 最新情報 in 岡山2013 Ignite UI 最新情報 in 岡山
2013 Ignite UI 最新情報 in 岡山
 
20130608 git-0
20130608 git-020130608 git-0
20130608 git-0
 
Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Git -分散バージョン管理システム-
Git -分散バージョン管理システム-
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
 
Git地図
Git地図Git地図
Git地図
 
XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用XPages開発におけるGit/GitHubの利用
XPages開発におけるGit/GitHubの利用
 
Google borg と コンテナベース分散システムデザインパターン
Google borg と コンテナベース分散システムデザインパターンGoogle borg と コンテナベース分散システムデザインパターン
Google borg と コンテナベース分散システムデザインパターン
 
JiraとConfluenceのTips集
JiraとConfluenceのTips集JiraとConfluenceのTips集
JiraとConfluenceのTips集
 
第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版第1回 松本勉強会 2012 05 11 - 公開版
第1回 松本勉強会 2012 05 11 - 公開版
 
Gitの基本コマンド
Gitの基本コマンドGitの基本コマンド
Gitの基本コマンド
 
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント)
 
Gitごにょごにょ【概要編】
Gitごにょごにょ【概要編】Gitごにょごにょ【概要編】
Gitごにょごにょ【概要編】
 
VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011 VCS - Version Control System at Security and Programming camp 2011
VCS - Version Control System at Security and Programming camp 2011
 

Recently uploaded

モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 

Recently uploaded (9)

モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 

バージョン管理システム比較資料

  • 3. Git ● 利点 — — ● 動作速度が最も速いため、大規模 ( 数 100 万行を超 える ) なソースコードを管理するのに向いている 行単位の追跡(検索)機能があり、コードのコピー を追跡できる 欠点 — Git 固有の動作に慣れる必要がある ● — — ステージング、ブランチ = ポインタ、等々・・・ GUI の完成度が今一つ コミット時に変更ファイル全体を記録するため、リ ポジトリが肥大化しやすい 2013/12/22   Rev.2
  • 4. Mercurial ● 利点 — — 動作がシンプルであるため、分散型 VCS 中では最も 学習コストが低い 動作環境を選ばず、完成度の高い GUI が使用できる ● ● TortoiseHg Workbench 欠点 — 知名度が低く、情報が少ない — Git に比べて動作が遅い 2013/12/22   Rev.2
  • 7. まとめ ● 小、中規模のソース管理には Mercurial — — ● 数 100 万行の規模でも、開発環境に Windows を使わ なければ問題なはい 大規模なソース管理には Git — ● 大きな欠点もなく、導入しやすい 使い勝手はさておき、動作速度が重要な場合 Word/Excel など、自動マージできないドキュメ ントの管理には Subversion 2013/12/22   Rev.2
  • 8. Git と Merurial の比較 2013/12/22   Rev.2
  • 9. リポジトリサイズ比較 ● 紅桜 ( サクラエディタの派生版)リポジトリ — ファイル数 708 個 — ソースコード行数 17 万行 ( 有効行は 11 万行 ) — チェンジセット数 1191 個 Git リポジトリ サイズ Mercurial 61.8 MB 9.3 MB 2013/12/22   Rev.2
  • 10. 速度比較 ● 紅桜のソースコード (708 ファイル、 17 万行 ) 操作 Git Mercurial Git に対する Mercurial 処理時間 status 0.118 秒 0.273 秒 2.3倍 5.631 秒 5.105 秒 0.9倍 status 0.125 秒 0.264 秒 2.1倍 commit 0.247 秒 0.372 秒 1.5倍 (708ファイル追加前) add + commit (708ファイル新規追加) (8ファイル変更) (8ファイル変更) 2013/12/22   Rev.2
  • 11. Git 行単位の移動追跡機能 ・ Mercurial の annotate 出力 kobake suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv suzzsegv 0 500 500 500 500 500 500 500 500 500 500 500 500 500 500 500 Sun Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Wed Sep Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct Oct 28 24 24 24 24 24 24 24 24 24 24 24 24 24 24 24 09:39:47 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 2008 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 2012 +0000 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 sakura_core/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: sakura_core/env/CShareData.cpp: @brief タイプ別設定の初期化処理 /*! @date 2005.01.30 genta CShareData::Init() から分離. */ void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData) { CType* table[] = { new CType_Basis(), // 基本 new CType_Text(), // テキスト new CType_Cpp(), //C/C++ new CType_Java(), //Java new CType_Asm(), // アセンブラ new CType_Ini(), // 設定ファイル }; assert( 1 <= MAX_TYPES ); ・ Git の blame 出力 ^b8b49f8 f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae sakura_core/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp (kobake (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi 2008-09-28 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 09:39:47 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 +0000 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 946) 947) 948) 949) 950) 951) 952) 953) 954) 955) 956) 957) 958) 959) 960) 961) /*! @brief タイプ別設定の初期化処理 @date 2005.01.30 genta CShareData::Init() から分離. */ void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData) { CType* table[] = { new CType_Basis(), // 基本 new CType_Text(), // テキスト new CType_Cpp(), //C/C++ new CType_Java(), //Java new CType_Asm(), // アセンブラ new CType_Ini(), // 設定ファイル }; assert( 1 <= MAX_TYPES ); 2013/12/22   Rev.2
  • 12. Git 行単位の移動追跡機能 ・ Git の blame 出力 ( 通常出力 ) ^b8b49f8 f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae f1236fae sakura_core/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp (kobake (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki (Suzuki Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi Satoshi 2008-09-28 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 2012-10-24 09:39:47 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 22:02:44 +0000 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 +0900 946) 947) 948) 949) 950) 951) 952) 953) 954) 955) 956) 957) 958) 959) 960) 961) /*! @brief タイプ別設定の初期化処理 @date 2005.01.30 genta CShareData::Init() から分離. */ void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData) { CType* table[] = { new CType_Basis(), // 基本 new CType_Text(), // テキスト new CType_Cpp(), //C/C++ new CType_Java(), //Java new CType_Asm(), // アセンブラ new CType_Ini(), // 設定ファイル }; assert( 1 <= MAX_TYPES ); ・ Git の blame 出力 (-C オプションをつけた場合 ) ^b8b49f8 f1236fae ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 ^b8b49f8 f1236fae f1236fae ^b8b49f8 ^b8b49f8 ba97624a sakura_core/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/env/CShareData.cpp sakura_core/env/CShareData.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp sakura_core/types/CType.cpp (kobake (Suzuki Satoshi (kobake (kobake (kobake (kobake (kobake (kobake (kobake (kobake (kobake (Suzuki Satoshi (Suzuki Satoshi (kobake (kobake (moca_skr 2008-09-28 2012-10-24 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2008-09-28 2012-10-24 2012-10-24 2008-09-28 2008-09-28 2010-07-07 09:39:47 22:02:44 09:39:47 09:39:47 09:39:47 09:39:47 09:39:47 09:39:47 09:39:47 09:39:47 09:39:47 22:02:44 22:02:44 09:39:47 09:39:47 16:50:21 +0000 +0900 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0000 +0900 +0900 +0000 +0000 +0000 946) 947) 948) 949) 950) 951) 952) 953) 954) 955) 956) 957) 958) 959) 960) 961) /*! @brief タイプ別設定の初期化処理 @date 2005.01.30 genta CShareData::Init() から分離. */ void CShareData::InitTypeConfigs(DLLSHAREDATA* pShareData) { CType* table[] = { new CType_Basis(), // 基本 new CType_Text(), // テキスト new CType_Cpp(), //C/C++ new CType_Java(), //Java new CType_Asm(), // アセンブラ new CType_Ini(), // 設定ファイル }; assert( 1 <= MAX_TYPES ); 2013/12/22   Rev.2