gitについて、ドットインストールさんのサイトで勉強しました。
以下、その時のメモ的なものです。
linuxコマンド
- pwd
- 現在いるディレクトリを表示する。
- mkdir dirname
- ディレクトリ作成
- cd dirname
- ディレクトリを移動
- cat filename
- ファイルの中身を確認
- vim filename
- filenameでテキストエディタを新規作成
ヴァージョン管理の流れ
- ファイルを作ったり修正たり
- ある程度のまとまりになったら
- 履歴データベースに保存する
- 作業ディレクトリ
- ステージングエリア(インデックス)
- リポジトリ(ローカル、リモート)
gitコマンド
- git --version
- gitのバージョン情報を表示する。
- git config --global user.name ”{your name}"
- gitの名前の設定。(必須)
- git config --global user.email "{your email}"
- gitのメールの設定。(必須)
- git config --global color.ui true
- 色分け表示の設定。
- git config -l
- gitの設定一覧表示。
- git config --help
git help config - configのヘルプ
- git config --global alias.co checkout
git config --global alias.st status
git config --global alias.br branch
git config --global alias.ci commit - コマンドにエイリアス(短縮名)を設定する。一番上はチェックアウトの短縮名をcoに設定してる。
- git init
- gitを使用する宣言。その作業ディレクトリ上で実行する。
- git add filename
- ステージングエリアにfilenameを登録
- git add .
- ステージングエリアにディレクトリ以下の全てのファイルを登録
- git commit
- リポジトリに登録。テキストエディタが起動してメッセージ入力する
- git commit -m "(message)"
- リポジトリに登録。メッセージはそのまま入力できる。
- git commit --amend
- 細かい修正のみで、新しくコミットする程でもない場合、リポジトリに登録した直前の内容で再登録する。
- git commit -am"(message)"
- addしつつcommitする。
- git log
- コミットの内容を確認する。
- コミットid
- コミットした人
- コミットした日時
- コミットのメッセージ
- git log --oneline
- ログの簡素版。
- idの上数桁
- メッセージ
- git log -p
- ログの詳細
変更箇所まで表示する。 - git log --stat
- どのファイルが何箇所変更された数を表示する。
- git status
- ステージングエリアやリポジトリとの差。
- git checkout -- filename
- ステージングエリアの内容に作業ディレクトリを戻す。
- git diff
- ディレクトリとステージングエリアの変更箇所を表示。
- git diff --cached
- リポジトリとステージングエリアの変更箇所を表示
- git rm filename
- 一度登録したファイルを削除した場合に、git上からも削除する。
- git mv filename
- 一度登録したファイルを移動した場合に、git上からも移動する。
- git reset --hard HEAD
- 直前コミット内容に戻す。--hard作業ディレクトリもステージングエリアも一気に戻す。
- git reset --hard HEAD^
- 直前の1つ前のコミットに戻す。HEAD^の部分はコミットidでもOK。
- git reset --hard ORIG_HEAD
- resetで戻った処理をやり直す。一度のみ。
- git branch
- ブランチの一覧表示。ブランチは分岐。初回のブランチ名はmaster。現状のブランチにアスタリスクついてる
- git branch (branch name)
- ブランチの新規作成。
- git checkout (branch name)
- ブランチの切り替え。
- git checkout -b (branch name)
- ブランチを作成しつつ、ブランチの切り替え
- git merge (branch name)
- マージは混ぜるの意味。別ブランチで追加した変更を現在いるブランチに適応させる。
- git branch -d (branch name)
- ブランチの削除。マージ後に実行する。
- git branch --merged
- 現在いるブランチにマージされたブランチ一覧を表示する。
- git tag
- tagはコミットidの別名。タグの一覧表示。
- git tag (tag name)
- 直前のコミットにタグ名をつける。
- git tag (tag name) (commit id)
- 指定されたコミットにタグ名をつける。
- git tag -d (tag name)
- 指定されたタグを削除する。
- git show (tag name)
- タグ名で指定されたコミット内容を表示する。
gitの管理に含めない方法
以下のファイルを作成して設定内容を保存する。
- vim .gitignore
- git管理に含めないファイルを登録する。サブディレクトリにも適応される。 *.log
コンフリクトの対処
- コンフリクトとは
- マージの際に同じ箇所が変更された場合は、コンフリクト(衝突)が発生して手動で修正が必要になる。
- コンフリクトの修正
- vim filename
コンフリクトを起こしているファイルをテキストエディタで開く。コンフリクトの内容が表示されるのでいい具合に修正して保存。
共有リポジトリ関連
- git init --bare
-
共有リポジトリを作成する。ディレクトリ名に.gitを付けるのが慣例。
mkdir ourweb.git cd ourweb.git git init --bare
- git remote add origin (repos location)
- リモートの設定。
- git push origin master
- 共有リポジトリに向かってmasterブランチの内容を突っ込む。
- git clone
- 共有リポジトリの内容をコピーする
- git pull
- 共有リポジトリの内容を現在の作業ディレクトリにマージする。
他の人が共有リポジトリにpushした場合は、自分が新しくpushする前にpullをする必要がある。
0 件のコメント:
コメントを投稿