ビット コイン ショート やり方k8 カジノ【 git add 】コマンド――変更内容をインデックスに追加してコミット対象にする仮想通貨カジノパチンコ中森 明菜 パチスロ

ビット コイン ショート やり方k8 カジノ【 git add 】コマンド――変更内容をインデックスに追加してコミット対象にする仮想通貨カジノパチンコ中森 明菜 パチスロ

ビット コイン ショート やり方k8 カジノ【 git add 】コマンド――変更内容をインデックスに追加してコミット対象にする仮想通貨カジノパチンコ中森 明菜 パチスロ

米国 株 新興 株k8 カジノ 「Linux基本コマンドTips」のインデックス

スロット ヤマトLinux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回はGitについて、ワークツリーで変更した内容をインデックスに追加する「git add」コマンドです。

目次

git addコマンドの概要 | 書式| オプション一覧

実行例ファイルを指定してインデックスに追加するgit addの対象外にしたいファイルを指定する管理中のファイルを対象にする個々の変更内容を確認しながらインデックスに追加するgit/git addコマンドとは?

 「git」は「Git」という分散型バージョン管理システム用のコマンドです。Gitは元々Linuxカーネルのソースコードを管理するために作られた「バージョン管理システム」で、現在は多くのソフトウェアのソースコードやWebサイトのコード、ドキュメント管理などに用いられています。

 ソースコードを管理する際、最新版だけを保存するやり方はうまくいきません。開発中のさまざまなタイミングで状態を管理し、必要に応じて比較、参照したり、元に戻したりできるようにする仕組みが「バージョン管理システム」です。

 Gitでは、テスト版など複数に枝分かれした状態も管理できます。複数のメンバーによる開発を前提としており、開発中の各時点におけるコメントや、コメントへの返信なども管理できるようになっています。

gitのサブコマンドとGitの仕組み

 gitコマンドはほとんどの場合、「サブコマンド」と組み合わせて利用します。今回紹介する「git add」はワークツリーで変更した内容をインデックスに追加するコマンドです(本連載ではgitとサブコマンドの組み合わせをコマンドとして紹介します)。

 gitコマンドが扱う「リポジトリ(repository)」とは、ソースコードや変更履歴、コメントなどを一括して保管する場所です。リポジトリには、自分のPC上に作る「ローカルリポジトリ」と、「GitHub」などのWebサービス上に作る「リモートリポジトリ」があり、両者を連携させることで複数の開発者による開発を1本にまとめることができます。

 既存のリポジトリ(リモートリポジトリ)にあるソースコードなどを入手したい場合は、まず、「git clone」(連載第381回)でリポジトリを自分の環境に複製します(※1)。リモートリポジトリの内容がバージョンアップされたら「git pull」(連載第382回)コマンドで最新版を取得します。開発に参加するのではなく、単に最新版を取得したいという場合は、「git clone」と「git pull」を利用すればよいでしょう。

※1 特定のファイルだけが欲しい場合、例えばGitHub(github.com)にあるリポジトリであれば「Raw」というボタンで表示されるURLを使い、「wget」コマンドなどを使ってダウンロードできる。この他、プロジェクト全体をダウンロードするためのリンクも用意されている([Clone or download]ボタン→「Download ZIP」)。

 保管場所であるリポジトリに対し、ファイルの編集などを行う場所を「ワークツリー」あるいは「ワーキングエリア」などと呼びます。「git clone」や「git pull」で取得した最新版のファイルはワークツリーに配置されます。つまり「作業ディレクトリ」です。

 ワークツリー(作業ディレクトリ)で編集した結果をリポジトリに反映する操作を「コミット」と呼びます。「git add」コマンドでコミットしたいファイルを「インデックス」あるいは「ステージングエリア」と呼ばれる領域に追加します。インデックスにはファイルの変更箇所などが記録されます。

 インデックスの内容は「git commit」コマンドでローカルリポジトリにコミットされ、「git push」コマンドでローカルリポジトリの内容をリモートリポジトリに反映します。従って、「git add」や「git commit」などを行わなければ、自分の環境で編集した内容がリポジトリに影響を与えることはありません。自由に編集し、テストできます。なお、ワークツリーのファイルを過去の任意のコミット状態に戻すことも可能です。

 Gitには、この他、開発中のプログラムやドキュメントを、「テスト版」「○○版」……のように枝分かれさせたり、それらを合流させたりする機能もあります。枝分かれしたそれぞれのバージョンを「ブランチ」(branch)と呼び、ブランチを合流させることを「マージ」(merge)と呼びます。

目次に戻る

コマンドの書式

git [オプション] サブコマンド [サブコマンドごとのオプションや引数]

git add [オプション] [ファイル名またはディレクトリ名……]

※ [ ]は省略可能な引数を示しています。

目次に戻る

gitの主なオプション

短いオプション長いオプション意味-C パスカレントディレクトリではなく指定したディレクトリで実行したものとする–bareリポジトリを「bareリポジトリ」(ワーキングディレクトリが存在しない、管理だけを目的としたリポジトリ)として扱う-c 設定=値設定値を指定する(設定は「git config」で確認可能)-p–paginate全ての出力を「less」コマンドまたは環境変数PAGERで指定されたコマンドで表示する-P–no-pager「less」コマンドで表示しない(「-p」の指定を打ち消す)–exec-path=パスgitの実行ファイルのパスを指定する(「–exec-path」のみの場合、実行ファイルのパスを表示する)–html-pathgitのHTML形式のドキュメントがインストールされたパスを表示する–man-pathgitのmanファイルのパスを表示する–info-pathgitのinfoファイルのパスを表示する

gitのサブコマンド

コマンド実行内容cloneリポジトリのクローンを作成するinitリポジトリを新規作成する、または既存のリポジトリを初期化するremoteリモートリポジトリを関連付けするfetchリモートリポジトリの内容を取得するpullリモートリポジトリの内容を取得し、現在のブランチに取り込む(「fetch」と「merge」を行う)pushローカルリポジトリの変更内容をリモートリポジトリに送信するaddファイルをインデックスに追加する(コミットの対象にする)rmファイルをインデックスから削除するmvファイルやディレクトリの名前を変更するresetファイルをインデックスから削除し、特定のコミットの状態まで戻すstatusワークツリーにあるファイルの状態を表示するshowファイルの内容やコミットの差分などを表示するdiffコミット同士やコミットと作業ツリーの内容を比較するcommitインデックスに追加した変更をリポジトリに記録するtagコミットにタグを付ける、削除する、一覧表示するlogコミット時のログを表示するgrepリポジトリで管理されているファイルをパターン検索するbranchブランチを作成、削除、一覧表示するcheckout作業ツリーを異なるブランチに切り替えるmerge他のブランチやコミットの内容を現在のブランチに取り込むrebaseコミットを再適用する(ブランチの分岐点を変更したり、コミットの順番を入れ替えたりできる)config現在の設定を取得、変更する

git addの主なオプション

短いオプション長いオプション意味-A–all、–no-ignore-removalGitで管理していないファイルも含めてインデックスに追加する(ワークツリーから削除したファイルは、削除したことを登録する)-u–updateGitで管理している全てのファイルの変更内容をインデックスに追加する(本文を参照)-p–patchファイル単位での追加はなく、個々の変更内容を確認しながらインデックスに追加する-e–edit変更内容を編集する-f–force「.gitignore」で対象外としているファイルもインデックスに追加する-i–interactiveインタラクティブモードで処理を選択する([q]キーまたは[CTRL]+[C]キーで中断)-N–intent-to-add後で追加する予定であることを記録する(正式に追加するまで「git commit」コマンドの対象にはならないが、変更箇所を確認する「git diff」コマンドの対象になる)-n–dry-run実行内容を表示するだけで実際には実行しない(本文を参照)-v–verbose実行中の内容を表示する–ignore-errors途中の処理に失敗しても操作を中断しない–renormalize正規化をやり直す(cleanプロセスを適用してインデックスに追加し直す。改行コードの自動変換設定を変更した際などに使用する)–この指定以降は全て引数(ファイル名やディレクトリ名)として扱う

目次に戻る

ファイルを指定してインデックスに追加する

 「git add ファイル名」で、指定したファイルをインデックス(ステージングエリア)に追加します。「git add .」ではカレントディレクトリにある全てのファイルが追加の対象となります。

 インデックスにはファイルの変更内容が記録されて、「git commit」コマンドの対象となります。

 変更内容をインデックスに追加することを「ステージング」と表現することがあります。既にステージングの対象になっている内容を「git diff –cached」で確認できます。「git diff」コマンドについてはこの後の連載で取り上げる予定です。

 なお、「git add」は、ワークツリー(作業ディレクトリ)の中で実行する他に、「git -C 作業ディレクトリ名 add ファイル名」のように、「-C」でワークツリーの場所を指定して実行できます。

 どのファイルが対象になるかを確認したい場合は、「-n」オプション(–dry-runオプション)を付けて実行するとよいでしょう。実際の処理は行わず、処理内容だけを表示できます。

コマンド実行例

git add ファイル名

(指定したファイルの変更内容をインデックスに追加し、「git commit」の対象にする)

git add *.html images/*.png

(「*.html」と「images/*.png」をインデックスに追加する)

git add .

(カレントディレクトリの全てのファイルをインデックスに追加する)

git add -n .

(「git add .」でどのファイルが対象となるかを表示する)

 画面1では、リポジトリを作成後、カレントディレクトリ内の全ファイルを対象としてインデックスに追加した場合の状況を確認しています。その後、特定のファイルのみを選んで実際に追加しました。

画面1画面1 ファイルをインデックスに追加したところ

目次に戻る

git addの対象外にしたいファイルを指定する

 常に「git add」の対象から外したいファイルがある場合は、ワークツリー(作業ディレクトリ)の「.gitignore」ファイルに対象外としたいファイル名やディレクトリ名を書いておきます(画面2)。「*.bak」のようなパターンを書くこともできます。

画面2画面2 git addの対象外にしたいファイルを指定した結果

目次に戻る

管理中のファイルを対象にする

 「git add -u」で、現在Gitで管理している全てのファイルを対象にして、インデックスに追加します(画面3)。

コマンド実行例

git add -u

(現在Gitで管理している全てのファイルを対象に、インデックスに追加して、「git commit」の対象にする)

画面3画面3 管理中のファイルを対象にしたのち、ファイルを更新したところ

目次に戻る

個々の変更内容を確認しながらインデックスに追加する

 変更内容をファイル単位でまとめて追加するのではなく、変更箇所や変更内容を確認しながらインデックスに追加したい場合は「-p」オプションを使用します。一つ一つの変更を「hunk」と呼び、diffのunified形式(diff -u)で出力します。

 「git add -p」を実行すると、変更のまとまりごとに、「Stage this hunk [y,n,q,a,d,s,e,?]?」のような確認メッセージを表示します。各コマンドの意味は次の通りです。

git add -pで使用できる主なコマンド

コマンド意味yこのhunkをインデックスに追加するnこのhunkはインデックスに追加しないq処理を中断するaこのhunkと以降のhunkを全てインデックスに追加するdこのhunkと以降のhunkを全てスキップするsこのhunkをさらに小さいまとまりに分割する(可能な場合のみ)eこのhunkを修正する(エディタがオープンする。+行、つまり新しい内容の行を修正することで修正内容を変更できる)?ヘルプを表示する

コマンド実行例

git add -p 対象

(変更内容を確認しながらインデックスに追加する)

 画面4では、確認メッセージに対して[e]キーを押して編集しています。viの起動後、該当するhunkを表示します(画面5)。「+」から始まっている行を修正してください。

画面4画面4 変更内容を確認しながらインデックスに追加しようとしているところ画面5画面5 エディタ内で該当部分を編集したところ

目次に戻る

筆者紹介

西村 めぐみ(にしむら めぐみ)

元々はDOSユーザーで「DOS版UNIX-like tools」を愛用。ソフトハウスに勤務し生産管理のパッケージソフトウェアの開発およびサポート業務を担当、その後ライターになる。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。地方自治体の在宅就業支援事業にてMicrosoft Officeの教材作成およびeラーニング指導を担当。会社などの”PCヘルパー”やピンポイント研修なども行っている。

仮想通貨カジノパチンコ旋盤 中古 品

コメントを残す

業界連盟:k8 カジノ k8 カジノ パチンコ 大工 の 源 さん k8 カジノ k8カジノ k8 カジノ k8 カジノ k8 ログイン | Feed | RSS | sitemap.html | Sitemap