0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Gitお勉強のまとめ

Last updated at Posted at 2021-07-04

【単語】

単語 説明
ワークツリー 作業環境(手元)
インデックス(ステージ) コミット対象を置く場所
リポジトリ 変更履歴を記録する場所
HEAD 今自分が作業している場所を示すポインタ

【よく使うコマンド】

コマンド 説明
git init 初期化 ロカールリポジトリ作成
git add インデックス(ステージ)への追加
git add . 全変更ファイルをステージへ反映
git commit リポジトリへの反映
git commit -m "コミットメッセージ" コミットメッセージと共にコミット
git reset ファイル ステージへ追加されたファイルの取り消し
git diff 変更点を確認 リポジトリとワークツリーの差分チェック
git diff -stage リポジトリとステージの差分
git diff 前のコミット番号 後のコミット番号 コミット番号間の差分
git status 変更ファイルをチェック。ここに色々載っています。
git log 履歴の確認
git checkout -b ブランチ名 ブランチの作成
git branch 現在のブランチを確認
git branch -m ブランチ名 ブランチ名を変更
git branch -d ブランチ名 ブランチを削除(派生元から派生後、派生元へマージしていない場合削除されない)
git branch -D ブランチ名 ブランチを削除(強制削除)
git checkout ブランチ名 ブランチの切り替え。※-bオプションでブランチ作成も同時に行う。
git switch ブランチ名 git checkout ブランチ名と同じ
git restore ファイル名 ワークツリーの変更を取り消す
git restore -staged ファイル名 ステージに挙げた変更をワークツリーに戻す

【GitコマンドTips】

  • ブランチを横断したGrep
git grep '検索文字列' $(git list-remote . 'refs/remotes/*' | cut -f 2)
  • コミット番号からブランチを検索
git branch -r --contains SHA-1の頭
  • コミット番号から日付を見る
git show SHA-1の頭

【Git Flowについて】

ブランチ 説明
master 本番環境
hotfix 本番(master)のバグ修正。本番バングを早急にバグを修正するためのブランチ
バグ修正が終わったらmasterとdevelopへ反映
release developから派生し本番(master)反映前にテストを行うブランチ。
テストがOKだったらmasterとdevelop両方へマージする
develop masterと同じ状態を保つ。ステージング環境への反映用
feature 機能開発用。developから派生

【Gitコマンド練習】

1.Local Repository作成

作業フォルダに移動し、Gitローカルリポジトリを作成

git init

.git隠しフォルダが作成されていることを確認

ls -a

2.ファイル作成、初回コミット

ファイルを作成します。

touch index.html

以下のように編集しておきます。
(私は、ターミナルで完結できないかと慣れないviで編集してみました。)

<p>1行目</p>
<p>2行目</p>
<p>3行目</p>

状態を確認

git status

ワークツリーの編集内容をインデックス(ステージ)にします。

git add .

状態を確認

git status

初回コミット
Author identity unknownのエラーが出た人はググって、設定を行ってください。(私は出ました。。。)

git commit -m "初回コミット"

状態を確認

git status

ログを確認してみる

git log

状態を確認

git status

3.ブランチ作成、ブランチでの編集とコミット

ブランチ作成(とブランチ切り替え)

git checkout -b "ブランチ名"

作成したブランチにいることを確認する

git branch

ファイルを編集する(4行目を追加する)

<p>1行目</p>
<p>2行目</p>
<p>3行目</p>
<p>four行目</p>

状態を確認

git status

インデックス(ステージ)に追加

git add .

状態を確認

git status

コミット

git commit -m "four行目追加した"

状態を確認

git status

ログを確認

git log

4.masterでの編集とコミット

ブランチ切り替え

git checkout "master"

masterブランチにいることを確認する

git branch

ファイルを編集する(4,5行目を追加する)

<p>1行目</p>
<p>2行目</p>
<p>3行目</p>
<p>4行目</p>
<p>5行目</p>

状態を確認

git status

インデックス(ステージ)に追加

git add .

状態を確認

git status

コミット

git commit -m "4,5行目追加した"

状態を確認

git status

ログを確認

git log

5.競合させてみる。競合を解決する。

git mergeでコンフリクトを発生させてみる
masterブランチにいることを確認し下記コマンドを実行します。

$ git merge feature

以下のようなメッセージが表示されると思います。

Auto-merging index.html
CONFLICT (content): Merge conflict in index.html
Automatic merge failed; fix conflicts and then commit the result.

index.htmlの中身は以下のようになっているかと思います。
=======から上のHEAD部分がmasterでの変更内容、=======から下のfeatureの変更内容になります。

<p>111</p>
<p>222</p>
<p>333</p>
<<<<<<< HEAD
<p>444</p>
=======
<p>four</p>
<p>five</p>
feature

以下のように修正します。

<p>111</p>
<p>222</p>
<p>333</p>
<p>444</p>
<p>five</p>

コミットします。

git add index.html
git commit -m "index.htmlのコンフリクト解消(master←featureへのマージ時)"

git statusgit logで状況を確認してみてください。

6. stashを使ってみる

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?