Git 基本的な使い方

Gitとは?

(ギット)
CUIバージョン管理ツール
通常、ファイルを上書きすると過去のファイルは削除されファイルは最新の状態になるが、
バージョン管理ツールを使うと各保存時の状態まで戻せる。
有志で開発されているGUIの拡張バージョンもある
他のバージョン管理ツールとの比較
差分だけをサーバーにアップできる
Git Bash
windows用Git

コマンド一覧

コマンド 機能
--version バージョン表示
init ローカルリポジトリ作成
add (ファイル名) ステージにアップロード
commit -m (コメント) コミット
status ステータス表示
log ログ表示
branch ローカルブランチ一覧表示
branch --remotes リモートブランチ一覧表示
branch --all リモートブランチを含むブランチ一覧表示
branch (ブランチ名) ブランチ作成
branch --delete (ブランチ名) ブランチ削除
branch --delete --remotes (ブランチ名) リモートブランチ削除
remote add (ブックマーク名) (URL) ブックマーク登録
remote rm (ブックマーク名) ブックマーク削除
remote --v ブックマーク一覧表示
push (ブックマーク名) (ブランチ名) リモートリポジトリへアップロード
pull (ブックマーク名) (ブランチ名) リモートリポジトリからダウンロード
clone (URL) (ディレクトリ) リモートリポジトリを複製
config --list 設定情報表示

インストール

バージョン確認

$ git -v

インストール

CUI版のインストール
$ apt-get install git
GUI版のインストール
$ sudo apt-get install gitk
GUI版gitの起動
$ gitk

初期設定

ホームディレクトリのconfigファイルに設定値を入力
$ git config –global user.name (ユーザ名)
$ git config –global user.email (メールアドレス)

リポジトリ作成

リポジトリをローカルに作成
$ git init
リポジトリとは?

保存領域

リポジトリ

保管庫の意。
バージョン管理対象ファイル保管場所
(.gitディレクトリ)
$ git init
ではローカルに作成される。
=ローカルリポジトリ
複数人でファイルを共有する場合は別コンピュータにリポジトリを作成する。
=リモートリポジトリ
GitHubというインターネット上のリモートリポジトリを利用可能
使用量に応じて料金が掛かる
Git チームでの利用方法/リモートリポジトリ」参照

ステージ

コミット待ち記憶領域
ステージにあるファイルのみリポジトリへアップロードできる。
ローカル→ステージ→リポジトリ
=インデックスに登録する
とも呼ばれる
インデックス=ステージングされたファイルの状態

作業ツリー

=作業領域
=ワークスペース
=ワークツリー

ローカルにあるファイルのみステージへアップロードできる。
ローカル→ステージリポジトリ

HEAD

リポジトリの最新のコミット状態

アップロード・ダウンロード

インデックスに追加

ローカルファイルをステージにアップロードし、コミット対象に加える
$ git add ファイル名
カレントディレクトリの全ファイルをインデックスに追加(コミット対象に加える)
$ git add .

コミット

ステージファイルをリポジトリにアップロードする。
$ git commit -m (コメント)
コミット毎にコミット番号が付加され、この番号へのロールバックが可能になる。

ロールバック

コミット番号の状態へロールバック
コミット番号はログで取得できる。
$ git reset --hard (コミット番号)
特定のファイルのみ、コミット番号の状態へロールバック
$ git checkout (コミット番号) (ファイルパス)

ステージクリア

ステージ内ファイルを削除
git reset

状態確認

ステータス表示

$ git status -s
A 新規
M 編集
D 削除
U 競合
? バージョン管理外

コミット番号表示

ログ表示(コミット番号表示)
git log --oneline
git log --oneline (ファイル名)
コミット時のハッシュ値の前7桁の数値を取得できる。

履歴表示

$ git log
$ git log (ファイル名)

ローカル状態確認

git show-branch -a