Skip to content

KatLab-MiyazakiUniv/learn-github-2021

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

learn-github-2021

演習

※以下で[~]のように説明しているところでは,入力する際は[]は含めない

1. KatLab-MiyazakiUniv/learn-github-2021forkする

2. forkした自分のリポジトリをクローンする

$ git clone https://github.com/[githubユーザ名]/learn-github-2021.git

3. upstreamを登録する

upstreamとして親リポジトリを登録する(upstreamは後述する最新の状態の取得で使用する)

$ cd learn-github-2021
$ git remote add upstream https://github.com/KatLab-MiyazakiUniv/learn-github-2021.git

4. ローカルリポジトリで作業する

4.1. githubでissueを建てる

githubのissuesタブにあるNew issueをクリックしてissueを建てる
タイトルを「課題提出([自分の名前])」にして,コメントは下図のように記述する

4.2. 作業用ブランチを切る

ブランチを確認すると,現在mainブランチにいることが分かる

$ cd learn-github-2021/[自分の名前のディレクトリ]
$ git branch
* main

git switch -cで作業用ブランチを作成して移動する
git branchコマンドで確認した時に,新しく作ったブランチに*が付いていればOK

$ git switch -c ticket-[issue番号]
$ git branch
  main
* ticket-[issue番号]

git switchはブランチを移動するコマンドで,オプションに-cをつけることで新たにブランチを作成して移動する

4.3. 列挙体の課題ファイルをディレクトリ下に新たに追加して,.gitkeepを削除する

課題ファイルの名前はDirection.cppにしてください

4.4. 編集内容をコミットする

まず.git statusで,編集したファイル(追加・削除も含む)が赤く表示されていることを確認する

$ git status
//編集内容が表示される

編集内容をインデックスに追加する
この時,git statusで確認すると,先程の赤い表示の箇所が緑になっている

$ git add Direction.cpp .gitkeep
$ git status
//編集内容が表示される

インデックスの内容をローカルリポジトリにコミットする

$ git commit -m "編集内容の簡潔な説明"

4.5. 自分のリモートリポジトリ(origin)にpushする

$ git push origin ticket-[issue番号]

5. KatLabのリポジトリにプルリクを出す

githubで自分のリポジトリを開いて以下の手順で操作する

Compare & pull requestをクリック

②プルリクのタイトルと内容を記述する

③レビューしてほしい人を選択する

Create pull requestをクリック

※プルリクのタイトルはclose #[issue番号] [プルリクの説明]とすると,該当issueと自動で紐づけられる

6. レビューを受けて修正する

Request changeがあれば修正し,レビュワー全員からApproveをもらったらマージする

7. ローカルリポジトリのmainブランチを最新の状態に更新する

git pullコマンドを使って,親リポジトリ(upstream)から最新の状態を取得する

$ git switch main
$ git pull upstream main

mainブランチを更新出来たら,新たにブランチを切って次の作業を進める(演習はここまで)

About

Git/githubの使い方を学ぶためのリポジトリ

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published