git linux command 正規表現の最低限（復習簡易まとめ・厳密でない）


#□linux ショートカット　コマンド


####-行頭、行末へカーソル移動
    Ctrl+A, Ctrl+E
####-行頭まで削除、行末まで削除
    Ctrl+U, Ctrl+K
####-1単語分コマンドを削除
    Ctrl+W
####-ターミナルの表示をクリア
    Ctrl+L
####-コマンド履歴の参照
    ↑, ↓, Ctrl+R
####-実行中のコマンドを中止
    Ctrl+C

####-現在自分がいるパスを表示
    pwd
####-指定したディレクトリの中身の一覧表示（指定なしの場合現在いるディレクトリ）
    ls　~/test

    ls: コマンド名
    ~/test: 指定したディレクトリのパス
    ~: ~ホームディレクトリの省略記法
####-lsコマンドのような一覧表示（ツリー常に表示できる）
    tree 
####-現在いるディレクトリを変更　自分がいる場所を移動する
    cd ディレクトリのパス
####-ディレクトリ新規作成
    mkdir　ディレクトリ名
####-ファイルを作成
    touch　ファイル名
####-ファイルやディレクトリの名前変更
    mv　old_name new_name
####-ファイルやディレクトリをコピー（ディレクトリコピーには-r オプションをつける）
    cp original_name copy_name
####-ファイルやディレクトリを削除（ディレクトリの削除には-rオプションをつける）
    rm　ファイル名
####-ファイルの内容を表示
    cat　ファイル名
####-ファイルやディレクトリの名前を検索
    find . -name test

    find : コマンド名
    . : 検索するディレクトリを指定（.は正規表現で現在いる場所という意味）
    -name :　名前をしていするオプション
    test : -nameに渡す値
####-文書内の内容から文字列を検索する
    grep　検索文字列　テキストファイル

    検索文字列には正規表現を使用できる
    テキストファイルには、複数のパスを指定できる
####-コマンドの結果を出力する(>:　上書き >>: 追記)
    cat file > log.txt
####-コマンドの結果をコマンドに渡す
    ls | rm

    現在のディレクトリのすべてをrmに渡す
####-コマンド履歴を表示
    history

#□　git command

####-gitへの初期設定　名前を設定
    $ git config --global user.name "XXXX"
####-gitへの初期設定　メールアドレスを設定
    $ git config --global user.email "XXXX@hogehoge.com"

####-作業ディレクトリを初期化（.git ディレクトリを作成）
    $ git init
####-変更したファイルを修正済みとして、登録
    $ git add .

    add: コマンド名
    .  : 指定ファイルやディレクトリ（.は正規表現のすべてという意味）

####-修正済みとして登録したファイルを成果物として登録
    $ git commit -m "Initial commit"

    commit : コマンド名
    -m : コマンドのオプション指定（コメントを追加するオプション）
    "Initial commit" : -m に渡す値（コメントの内容）

####-外部のサーバーにリモートリポジトリを追加する
    $ git remote add origin https://github.com/XXXX/XXXXXX.git

    remote add : コマンド名
    origin : リモートリポジトリにつけたい名前　任意に指定可能

####-リモートリポジトリに自分がした変更を反映させる
    $ git push -u origin master

    push : コマンド名
    -u :オプション名（初回にこのコマンドを実行するときに指定する）
    origin : リモートリポジトリの名前
    master :　リモートリポジトリのブランチ名

####-リモートブランチのクローン（コピー）をごっそりとってくる
    $ git clone https://github.com/XXXX/XXXXXX.git

    clone :　コマンド名
    https... : クローンしたいリモートブランチのURL

####-ブランチ名表示
    $ git branch
####-ローカルでブランチを作成
    $ git branch <ブランチ名>
####-ブランチ名変更(-m によるオプション指定)
    $ git branch -m <古いブランチ名> <新しいブランチ名>
####-ブランチの削除(-d によるオプション指定)
    $ git branch -d <ブランチ名>

####-ブランチの切り替え
    $ git checkout <ブランチ名>
####-ブランチを作成した後にそのブランチに切り替え(-b によるオプション指定)
    $ git checkout -b <ブランチ名>

####-リモートの状態をローカルに反映
    $ git pull
    
    cloneはリモートリポジトリの作業用コピーを作る
    基本的に一回限りの実行

    pullは、すでに作業用コピーが手元にある前提で使用する。
    チーム開発において、他人が変更したリモートを手元にこまめに反映させて、開発を始める。その際に使用する。

####-リモートリポジトリをローカルのリモート用ブランチに反映
    $ git fetch
####-リモートリポジトリ用ブランチの内容を現在のブランチ反映させる
    $ git merge origin/master
    merge :　コマンド名（別のブランチの内容を現在のブランチに反映させるコマンド）

####-現在どれが修正済みでどれが成果物として登録されているのか？表示（add とcommit の表示）
    $ git status

####-修正したファイルの差分を確認する
    $ git diff <ファイル名>

####-成果物のコメント等を表示（commit のログを表示）
    $ git log
####-成果物の内容の差分を表示（指定したcommitとその１つ前の差分を表示）
    $ git show <コミットのハッシュ値>

#□正規表現

. :なんでもいい１文字
^ :行頭
$ :行末
* :直前の文字の０回以上
+ :直前の文字の1回以上
? :直前の文字の0か１回
| :指定した文字列のどれか　例　ibm|ms|apple
[]:指定した文字のどれか　　例　明日は[晴曇雨]です　
():グループ化　          例　明日(ぼく|わたし)は帰宅します
[A-Z0-9] :　アルファベットと数字１文字
[^A-Z] :　アルファベット以外の１文字