LoginSignup
0
1

More than 3 years have passed since last update.

Git初心者向けGitHubの流れ

Last updated at Posted at 2020-07-09

Gitの基本事項をGitHubで使用する流れの備忘録

リポジトリを作る

masterブランチが作成されるスクリーンショット 2020-07-09 午後6.43.26.png

ブランチを切る(今回はtestブランチとする)
masterブランチの内容が複製されたtestブランチが作られる(リモート側で作られる)
リモートで作成完了したtestブランチをローカルにpullする。
testブランチでファイルの内容を修正する(ローカルでの作業)
testブランチでadd→commitする(ここまではローカルでの作業)
testブランチでpushする→pushするとローカルの内容がリモートリポジトリのtestブランチに反映される。

プルリクエストについて

testブランチで修正した内容をmasterブランチにマージ(統合)したい場合、プルリクエストが必要
testブランチ→masterブランチへプルリクエストを出す
GitHub上のpull requestsタブを選択しマージする
masterブランチへtestブランチでの修正を反映することが出来る。
マージを間違えた時は「revert」ボタンで取り消し可能

コンフリクトについて

自分の変更をプルリクエストしようとしたら、変更されていて自動ではマージ出来ない時

コンフリクトの例)

スクリーンショット 2020-07-09 午後6.38.32.png

GitKrakenを使用。

画像の説明
リポジトリ名(conflict-test)にtest.htmlを作成
test.htmlファイルの入ったdevelopブランチを作成

test.html(developブランチ)

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <h1>タイトル</h1>
  <h2>サブタイトル</h2>
  <h3>内容</h3>
</body>
</html>

developブランチからfeatブランチを作成し以下の内容に修正

test.html(featブランチ)

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <h1>タイトル</h1>
  <h2>サブちゃん</h2>//ここを修正した
  <h3>姉ちゃん</h3>//ここを修正した
</body>
</html>

そしてfeatブランチの内容をadd , commit , pushする

developブランチも内容を修正しpushする
今回はサブタイトルの部分をh2タグ→h3へ変更する

 <h1>タイトル</h1>
  <h3>サブタイトル</h3>//ここを修正した
  <h3>内容</h3>

そしてGitHub上でプルリクエストを
feat→developで実行
すると、、コンフリクト発生!

スクリーンショット 2020-07-09 午後7.44.12.png

Resolve conflictsを選択
スクリーンショット 2020-07-09 午後7.45.01.png

変更箇所が


  <h1>タイトル</h1>
<<<<<<< feat
  <h2>サブちゃん</h2>
  <h3>姉ちゃん</h3>
=======
  <h3>サブタイトル</h3>
  <h3>内容</h3>
>>>>>>> develop

このように表示される
上がプルリクエスト元のfeatの記述
下がプルリクエスト先のdevelopの記述
<<<<<< >>>>>>>
で囲われた部分がコンフリクト部分なので、ここを任意の内容に修正して解決する
今回はh2タグをサブちゃん(元はfeatブランチ)とh3タグは内容(元はdevelopブランチ)にして編集する

スクリーンショット 2020-07-09 午後7.49.14.png

このように画面上で不要な文字を削除し、修正を完了→Mark as resolvedを選択
スクリーンショット 2020-07-09 午後7.50.50.png
commit margeを選択

スクリーンショット 2020-07-09 午後7.51.04.png
Merge pull requestを選択

スクリーンショット 2020-07-09 午後7.51.45.png
任意でコメントを書き(今回は:サブタイトルをサブちゃんにしたと記述)Confirm mergeを選択
スクリーンショット 2020-07-09 午後7.51.53.png
コンフリクトが解消された。

補足:Delete branchを押すと今回のマージ元のfeatブランチを削除することが可能(削除してもその後同じ場所に出てくるRestor branchを選択すると復元可能)
但し、ローカルブランチのfeatは残ったままなので注意。

0
1
1

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
1