SlideShare una empresa de Scribd logo
バージョン管理システム
比較資料
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

Más contenido relacionado

La actualidad más candente

Git SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しようGit SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しよう
富士見研究所
 
Subversionでバージョン管理を!
Subversionでバージョン管理を!Subversionでバージョン管理を!
Subversionでバージョン管理を!
Ryuzo Yamamoto
 
Parser combinatorってなんなのさ
Parser combinatorってなんなのさParser combinatorってなんなのさ
Parser combinatorってなんなのさ
cct-inc
 
C#や.NET Frameworkがやっていること
C#や.NET FrameworkがやっていることC#や.NET Frameworkがやっていること
C#や.NET Frameworkがやっていること
信之 岩永
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメYoji Kanno
 
C++ マルチスレッド 入門
C++ マルチスレッド 入門C++ マルチスレッド 入門
C++ マルチスレッド 入門
京大 マイコンクラブ
 
【修正版】Django + SQLAlchemy: シンプルWay
【修正版】Django + SQLAlchemy: シンプルWay【修正版】Django + SQLAlchemy: シンプルWay
【修正版】Django + SQLAlchemy: シンプルWay
Takayuki Shimizukawa
 
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
Masahiro Nishimi
 
いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0
Masakazu Matsushita
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろうKota Mizushima
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
増田 亨
 
国際会計基準(IFRS)適用企業の財務評価方法
国際会計基準(IFRS)適用企業の財務評価方法国際会計基準(IFRS)適用企業の財務評価方法
国際会計基準(IFRS)適用企業の財務評価方法
Takahiro Kubo
 
KiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアルKiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアル
裕士 常田
 
コンセプトから理解するGitコマンド
コンセプトから理解するGitコマンドコンセプトから理解するGitコマンド
コンセプトから理解するGitコマンド
ktateish
 
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
Kohsuke Yuasa
 
OSを手作りするという趣味と仕事
OSを手作りするという趣味と仕事OSを手作りするという趣味と仕事
OSを手作りするという趣味と仕事
uchan_nos
 
Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例
Tomohisa Kusukawa
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
増田 亨
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
Hajime Yanagawa
 
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
Yoshitaka Kawashima
 

La actualidad más candente (20)

Git SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しようGit SourceTreeでバージョン管理しよう
Git SourceTreeでバージョン管理しよう
 
Subversionでバージョン管理を!
Subversionでバージョン管理を!Subversionでバージョン管理を!
Subversionでバージョン管理を!
 
Parser combinatorってなんなのさ
Parser combinatorってなんなのさParser combinatorってなんなのさ
Parser combinatorってなんなのさ
 
C#や.NET Frameworkがやっていること
C#や.NET FrameworkがやっていることC#や.NET Frameworkがやっていること
C#や.NET Frameworkがやっていること
 
オブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメオブジェクト指向エクササイズのススメ
オブジェクト指向エクササイズのススメ
 
C++ マルチスレッド 入門
C++ マルチスレッド 入門C++ マルチスレッド 入門
C++ マルチスレッド 入門
 
【修正版】Django + SQLAlchemy: シンプルWay
【修正版】Django + SQLAlchemy: シンプルWay【修正版】Django + SQLAlchemy: シンプルWay
【修正版】Django + SQLAlchemy: シンプルWay
 
デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣デキるプログラマだけが知っているコードレビュー7つの秘訣
デキるプログラマだけが知っているコードレビュー7つの秘訣
 
いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0いつやるの?Git入門 v1.1.0
いつやるの?Git入門 v1.1.0
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門ドメイン駆動設計 本格入門
ドメイン駆動設計 本格入門
 
国際会計基準(IFRS)適用企業の財務評価方法
国際会計基準(IFRS)適用企業の財務評価方法国際会計基準(IFRS)適用企業の財務評価方法
国際会計基準(IFRS)適用企業の財務評価方法
 
KiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアルKiCadで雑に基板を作る チュートリアル
KiCadで雑に基板を作る チュートリアル
 
コンセプトから理解するGitコマンド
コンセプトから理解するGitコマンドコンセプトから理解するGitコマンド
コンセプトから理解するGitコマンド
 
規格書で読むC++11のスレッド
規格書で読むC++11のスレッド規格書で読むC++11のスレッド
規格書で読むC++11のスレッド
 
OSを手作りするという趣味と仕事
OSを手作りするという趣味と仕事OSを手作りするという趣味と仕事
OSを手作りするという趣味と仕事
 
Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例Redmineとgitの 連携利用事例
Redmineとgitの 連携利用事例
 
現場で役立つシステム設計の原則
現場で役立つシステム設計の原則現場で役立つシステム設計の原則
現場で役立つシステム設計の原則
 
モジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェースモジュールの凝集度・結合度・インタフェース
モジュールの凝集度・結合度・インタフェース
 
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
思考停止しないアーキテクチャ設計 ➖ JJUG CCC 2018 Fall
 

Destacado

統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
Taiji Suzuki
 
大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方
hibiki443
 
リソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策についてリソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策について
geechs inc. / geechs株式会社
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
Takafumi Yoshida
 
Tortoise hgのすすめ
Tortoise hgのすすめTortoise hgのすすめ
Tortoise hgのすすめsuzzsegv
 
はじめようGit
はじめようGitはじめようGit
はじめようGit
techscore
 
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入門
Masakazu Matsushita
 
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株式会社
 
「オルタンシア・サーガ」開発の裏側
「オルタンシア・サーガ」開発の裏側「オルタンシア・サーガ」開発の裏側
「オルタンシア・サーガ」開発の裏側
geechs inc. / geechs株式会社
 
Oracle R Enterprise の使い方
Oracle R Enterprise の使い方Oracle R Enterprise の使い方
Oracle R Enterprise の使い方
オラクルエンジニア通信
 
アセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみるアセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみる
RYUTARO OSAFUNE
 
ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析
新潟コンサルタント横田秀珠
 

Destacado (20)

統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
統計的学習理論チュートリアル: 基礎から応用まで (Ibis2012)
 
大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方大容量ファイルもGitで管理。 Git LFSの使い方
大容量ファイルもGitで管理。 Git LFSの使い方
 
リソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策についてリソースのバージョン管理/運用の失敗談と改善策について
リソースのバージョン管理/運用の失敗談と改善策について
 
一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理一人でもはじめるGitでバージョン管理
一人でもはじめるGitでバージョン管理
 
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入門
 
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 の使い方
 
アセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみるアセットビルドパイプラインについて考えてみる
アセットビルドパイプラインについて考えてみる
 
ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析ショッピングモールと自社サイトの違いを比較表による分析
ショッピングモールと自社サイトの違いを比較表による分析
 
Git (実践入門編)
Git (実践入門編)Git (実践入門編)
Git (実践入門編)
 

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

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
 
dvcs-kyoto
dvcs-kyotodvcs-kyoto
dvcs-kyoto
Naoya Inada
 
2013 Ignite UI 最新情報 in 岡山
2013 Ignite UI 最新情報 in 岡山2013 Ignite UI 最新情報 in 岡山
20130608 git-0
20130608 git-020130608 git-0
20130608 git-0
Kasu Unko
 
Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Git -分散バージョン管理システム-
Git -分散バージョン管理システム-Koji Shinba
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
Seiya Mizuno
 
Git 初心者講座 by forkwell
Git 初心者講座 by forkwellGit 初心者講座 by forkwell
Git 初心者講座 by forkwell
sinsoku 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 a バージョン管理システム比較資料 (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
 

Último

キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
Takayuki Nakayama
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
osamut
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
tazaki1
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
嶋 是一 (Yoshikazu SHIMA)
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
Matsushita Laboratory
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
Toru Tamaki
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
CRI Japan, Inc.
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
t m
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
chiefujita1
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
Osaka University
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
harmonylab
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
azuma satoshi
 

Último (12)

キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援しますキンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
キンドリル ネットワークアセスメントサービスご紹介 今のネットワーク環境は大丈夫? 調査〜対策までご支援します
 
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMMハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
ハイブリッドクラウド研究会_Hyper-VとSystem Center Virtual Machine Manager セッションMM
 
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライドHumanoid Virtual Athletics Challenge2024 技術講習会 スライド
Humanoid Virtual Athletics Challenge2024 技術講習会 スライド
 
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
「進化するアプリ イマ×ミライ ~生成AIアプリへ続く道と新時代のアプリとは~」Interop24Tokyo APPS JAPAN B1-01講演
 
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
ReonHata_便利の副作用に気づかせるための発想支援手法の評価---行為の増減の提示による気づきへの影響---
 
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
論文紹介:Deep Learning-Based Human Pose Estimation: A Survey
 
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアルLoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
LoRaWAN 4チャンネル電流センサー・コンバーター CS01-LB 日本語マニュアル
 
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
遺伝的アルゴリズムと知識蒸留による大規模言語モデル(LLM)の学習とハイパーパラメータ最適化
 
This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.This is the company presentation material of RIZAP Technologies, Inc.
This is the company presentation material of RIZAP Technologies, Inc.
 
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
生成AIがもたらすコンテンツ経済圏の新時代  The New Era of Content Economy Brought by Generative AI
 
Generating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language ModelsGenerating Automatic Feedback on UI Mockups with Large Language Models
Generating Automatic Feedback on UI Mockups with Large Language Models
 
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobodyロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
ロジックから状態を分離する技術/設計ナイト2024 by わいとん @ytnobody
 

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

  • 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