質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

Q&A

解決済

3回答

17028閲覧

gitの「commit」とはどういう意味でしょうか?

margalet

総合スコア90

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

GitHub

GitHubは、Gitバージョン管理システムを利用したソフトウェア開発向けの共有ウェブサービスです。GitHub商用プランおよびオープンソースプロジェクト向けの無料アカウントを提供しています。

0グッド

0クリップ

投稿2016/01/21 14:26

ふとgitのコマンドの意味について調べたくなり「commit」について調べてみました。
辞書を引くと「委ねる」「委任する」「約束する」などの意味が載っていました。

gitを使っていて個人的にcommitはsubmit(送信する)的な意味だと思っていたのですが、gitにおけるcommitとはどういう意味なのでしょうか?

「(コミットメッセージに書いたことが実現されることを)約束する」のようなな意味なのでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

IT分野に限らない一般社会で使われる commit という英単語は単なる意見表明(statement)ではなく、その内容に責任を持つ(promise)という意味合いが強く含まれています。

翻ってIT分野では commit はデータベース用語として用いられることが多いと思います。データベースの操作において commit とは、テーブルやレコードへの更新手順や更新内容を定義(予約)したあとで、「予約内容をすべて実行せよ。(更新内容が正しいかどうかはアプリが確認済みなので、この操作に対して異議を申し立てることはない、という強い意志を伴った命令)」という意味を持つステートメントです。

このような背景を踏まえると、Gitでの commit という言葉の意味が解りやすくなったのではないでしょうか。Git の commit は Git のリポジトリ(Gitのデータベースとも言える)に対する「予約内容をすべて実行せよ。」という意味です。作業コピー内でファイルにいろいろな編集を加えることは「ファイルの変更予約」であり、それらを commit することでリポジトリに保存される。さらに、その変更内容が正しいことを編集者自身が確認済みであり、後戻りすることはない、という強い意思表示を含んだ命令である。と考えるとわかりやすいのではないでしょうか。

投稿2016/01/21 15:49

tkanda

総合スコア2425

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

日本人より英語ネイティブの人に聞く方が的確に回答もらえる質問なんだろうな…ということで。

もう少し根本的なところから理解したい場合はウィクショナリーが役立つかもしれません。


ちなみに、ウィクショナリーによると、

commitはsubmit(送信する)的な意味だと思っていた

com**mit, submit**の語源mittereがまさに「送信する」みたいですね :)

投稿2016/01/22 03:04

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

commitという単語は辞典を何回読んでも捉えどころのない単語です。
語源が「共に(co-)」「送る(mit)」であり、ニュアンスとして「神のもとへ」という意味を含む経緯がある単語なのだと頭でわかっていてさえ

  • 公言する、公約する
  • 貢献する、積極的に関与する
  • (犯罪や自殺などを)遂げる
  • (受け身の名詞化comitteeで)委員会

とバラバラの意味を持ち、しかもそれがなぜ版管理システムでは「版を作る」の意味になるのか、普通理解できません。

以下、こう整理すれば納得できるのではないかという個人的な見解です。
「公式化する」「具現化する」という共通の意味があると捉えてみましょう。「まとめて送り出す」からなんとか連想可能かと思います。
そうするとなるほど、「貢献する、積極的に関与する」や「遂げる」は(言葉だけでなく)「本当に行動する」ような意味合いではと理解できます。
委員会は、「公式発言をする場」ということになりましょうか。
「版を作る」のも下書きだったものを版として固定することなのだと解釈できます。

いかがでしょうか。

投稿2016/01/22 00:55

yuba

総合スコア5568

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問