ローカルリポジトリ操作
ローカルリポジトリの作成
Gitで管理を始める際に使うコマンドです。コマンドを入力した場所でリポジトリが作成されてしまうので、プロジェクトのルートディレクトリで実行が必要です。
ファイルの変更箇所を確認
ローカルリポジトリへファイル変更の登録
このコマンドだけではリポジトリにはデータが保存されません。変更情報のみを登録するだけのコマンドです。変更する前の前舞台に上げるという意味でステージングエリアに上げるとも言います。
以下のコマンドを使うと、全ての変更を一度にステージングすることができます。
ステージングエリアから外す
git add でステージングしたデータを取り消します。
$ git rm --cached {ファイル名}
変更登録情報の確認
どのファイルがステージングされているか確認することができます。
ローカルリポジトリにデータを保存
コミットといいます。コメントは必ず必要なため、オプションでつけておくとスムーズです。
直前のコミットの取り消し
コミットの取り消し(作業コミットは残した状態で打ち消しコミットを生成)
コミットしていない作業中のデータを一旦退避する
作業途中でbranchを切り替えたくなったけど、現状のデータをコミットしたくない。そんな時に使えるコマンドです。
stashしたデータの一覧を表示
stashして退避したデータをもとに戻す
$ git stash apply stash@{0}
複数コミットをまとめる
コミットを重ねていると、無駄なコミットが発生し履歴がごちゃごちゃになってしまいます。後から見た時にコミット履歴を追いやすいように、コミットをわかりやすい単位にまとめておく必要があります。
$ git rebase -i HEAD~4(最新コミットからのコミット数)
上記コマンドを入力すると、vimが立ち上がりどのようにコミットを修正するか指定します。
- pick そのままコミットを残す
- squash 前のコミットにマージする、メッセージなどの編集可能
- fixup 前のコミットにマージする、メッセージはマージされるコミットのコメントを使用
コミット履歴を確認
コミット履歴を確認することができます。各コミットにはハッシュ(commit 98f9f3db2b75d1…)がついておりどのコミットか判別が容易になっています。
1コミット、1行で表示。
ビジュアルでコミットログを見やすく
$ git log --oneline --graph
ブランチ操作
gitには複数人で作業しやすいようにブランチという機能が存在します。
現在のブランチを確認
新規ブランチを作成
$ git checkout -b {ブランチ名}
ブランチを切り替え
ブランチを最新のコミットの状態に戻す(作業中のデータは削除される)
リモートリポジトリ操作(github)
githubからリポジトリをコピーする
githubに公開されているリポジトリをローカルPCにコピーします。これをクローンと言います。
クローンする際httpsとsshがありますが、httpsを選択するとリモートリポジトリにアクセスする際、毎回IDとパスワードを入力する必要があるためできればsshでのクローンをおすすめします。
登録されているリモートリポジトリ一覧を表示
クローンしたリポジトリを最新の状態にする
リモートリポジトリは他の人も作業しているので、常に更新されています。そのためクローンしてきたリポジトリも更新が必要になります。
$ git pull origin {ブランチ名}
ローカルリポジトリの内容をリモートリポジトリに反映させる
$ git push origin {ブランチ名}
他人が作業しmasterにマージしたコミットを自分の作業ブランチに時系列順に取り込む