-
Notifications
You must be signed in to change notification settings - Fork 11
演習問題一覧表
Beluuuuuuga edited this page Mar 8, 2022
·
16 revisions
2022/03/06
- practice09-2を2022/03/06の18:00に入れ替えました。それまでにダウンロードした方は改めてダウンロードしてください(全ての演習問題が入ったディレクトリも更新しています)。
2022/03/08
- 演習16のpractice16ですが、演習の前にリモートリポジトリがある演習と同じ用にリモートリポジトリの追加をお願いします。
- 演習19のpractice19ですが、演習の前にリモートリポジトリがある演習と同じ用にリモートリポジトリの追加をお願いします。
- 演習17のpractice17ですが、2022/03/08の23:00に分岐問題を追加しました。それまでにダウンロードした方は改めてダウンロードしてください(全ての演習問題が入ったディレクトリも更新しています)。
- 演習18のpractice18ですが、2022/03/08の23:00に入れ替えました。それまでにダウンロードした方は改めてダウンロードしてください(全ての演習問題が入ったディレクトリも更新しています)。
演習問題のダウンロードについては1.コマンドラインを参照してください。
複数の解き方がある場合は、xx-①、xx-②などの書き方をしています。
xx-①は、それぞれの演習のタイトルと同じです。
下の表でリポジトリの列はローカルリポジトリとGitHubリポジトリの2種類存在します。
- コマンドライン:ローカル環境にリポジトリをダウンロードして演習してください
- GitHub:GitHub上でリモートリポジトリとしてリポジトリを作成し演習してください
備考の列がリポジトリなしで演習可能と記載されているものは2つに分類されます。
- リポジトリを作成するところから演習がスタートする(演習1)
- 知識問題として演習する(演習52、演習58、演習70、演習73など)
演習番号 | タイトル | 詳細 | ディレクトリ | リポジトリ | 備考 |
---|---|---|---|---|---|
1 | リポジトリを作成する | ローカル環境でディレクトリを作成し、ディレクトリをリポジトリとして登録する。 | ー | コマンドライン | リポジトリなしで演習可能 |
2 | 差分をステージングする | ファイルを作成しステージングする。 | practice02 | コマンドライン | ー |
3 | 差分をコミットする | ファイルを作成しコミットする。 | practice03 | コマンドライン | ー |
4 | GitHubでリポジトリを作成する | GitHub上でリポジトリを作成し、ローカルリポジトリのリモートリポジトリとして登録する。 | practice04 | GitHub、コマンドライン | ー |
5 | 変更をリモートリポジトリに反映する | ローカルリポジトリのコミットをリモートリポジトリに反映する。 | practice05 | GitHub、コマンドライン | ー |
6 | リポジトリを取得する | GitHubからリポジトリをクローンして取得する。 | ー | GitHub | ー |
7 | ブランチを作成する | ブランチを作成する。 | practice07 | コマンドライン | ー |
8 | ブランチへ移動する | 別のブランチへチェックアウトで移動する。 | practice08 | コマンドライン | ー |
9-①:コマンドラインでマージする | ブランチをマージする | コマンドラインとGitHub上でブランチをマージする。 | practice09-1 | コマンドライン | ー |
9-②:GitHubでマージする | ブランチをマージする | コマンドラインとGitHub上でブランチをマージする。 | practice09-2 | GitHub、コマンドライン | GitHub上とローカルで演習 |
10 | 追跡されてないファイルを確認する | ファイルを作成しリポジトリの状態を確認する。 | practice10 | コマンドライン | ー |
11 | ファイルの差分を確認する① | Gitによって追跡されているファイルに変更を加えて差分状態を確認する。 | practice11 | コマンドライン | ー |
12 | コミットを確認する① | コミットログを確認する。 | practice12 | コマンドライン | ー |
13 | ファイル作成からプッシュまで行う | 追跡済みファイルに変更を加え、差分や状態などを見ながらコミットし、プッシュまで行う。 | practice13 | GitHub、コマンドライン | ー |
14 | コンフリクトを準備する | 2つのブランチで同一ファイルの編集し、コンフリクトを起こす。 | practice14 | コマンドライン | ー |
15 | コンフリクトを解消する | 演習14で発生させたコンフリクトを解消する。 | practice15 | GitHub、コマンドライン | ー |
16 | リモートブランチを確認する | リモートブランチを確認する。 | practice16 | GitHub、コマンドライン | ー |
17-①:マージされているブランチを削除する | ブランチを削除する | マージ済みのブランチとマージされてないブランチを削除する。 | practice17 | コマンドライン | ー |
17-②:マージされていないブランチを削除する | ブランチを削除する | マージ済みのブランチとマージされてないブランチを削除する。 | practice17 | コマンドライン | ー |
18 | ブランチ名を変更する | ブランチ名を変更する。 | practice18 | コマンドライン | ー |
19 | リモートリポジトリの情報をローカルに持ってくる | リモートリポジトリをフェッチしてローカルにコピーする。 | practice19 | GitHub、コマンドライン | ー |
20-①:特定のコミットを取り入れる | 特定のコミットを取り入れる | チェリーピックを利用し、特定のコミットを取り入れる。 | practice20-1 | コマンドライン | ー |
20-②:特定の複数のコミットを取り入れる | 特定のコミットを取り入れる | チェリーピックを利用し、特定のコミットを取り入れる。 | practice20-2 | コマンドライン | ー |
20-③:コンフリクトに対処する | 特定のコミットを取り入れる | チェリーピックを利用し、特定のコミットを取り入れる。 | practice20-3 | コマンドライン | ー |
21 | コミットからブランチを作成する | 特定のコミットからブランチを作成する。 | practice21 | コマンドライン | ー |
22 | 変更を取り消す① | チェックアウトコマンドを利用し、追跡済みファイルの変更差分を取り消す。 | practice22 | コマンドライン | ー |
23 | コミットを修正する | コミットメッセージを修正する。 | practice23 | コマンドライン | ー |
24 | 変更を取り消す② | ステージングした変更を取り消す。 | practice24 | コマンドライン | ー |
25 | 変更を取り消す③ | コミットをインデックスエリアまで戻す。 | practice25 | コマンドライン | ー |
26 | 変更を取り消す④ | git resetコマンドのオプション--hard、--mixed、--softの挙動を理解する。 | practice26 | コマンドラインリ | ー |
27 | コミットを確認する② | コミットログを確認する。 | practice27 | コマンドライン | ー |
28 | ファイルの差分を確認する② | ブランチ間のファイル差分を確認する。 | practice28 | コマンドライン | ー |
29 | コミットの中身を確認する | コミットハッシュを指定し変更を確認する。 | practice29 | コマンドライン | ー |
30 | 作業履歴を確認する | ブランチ変更やマージなど作業履歴を確認する。 | practice30 | コマンドライン | ー |
31 | ファイルとディレクトリを削除する | Gitで追跡済みのファイルとディレクトリを削除する。 | practice31 | コマンドライン | ー |
32 | ファイル名とディレクトリ名を変更する | Gitで追跡済みのファイル名とディレクトリ名を変更する。 | practice32 | コマンドライン | ー |
33 | リモートブランチをマージする | リモートブランチをローカルブランチにマージする。 | practice33 | GitHub、コマンドライン | 演習のためにGitHub上でファイルを編集・コミットしてリモートリポジトリの方が進んでいる状態にする |
34 | 空のディレクトリを登録する | ファイルを持たない空のディレクトリをGitで管理する。 | practice34 | コマンドライン | ー |
35 | リベースで変更を取り込む | リベースコマンドを利用してマージする。 | practice35 | コマンドライン | ー |
36 | コミットの整理する | 複数のコミットを整理する。 | practice36 | コマンドライン | ー |
37 | ファイル編集履歴の確認 | ファイルが編集された履歴を追跡する。 | practice37 | コマンドライン | ー |
38 | 変更を無視する | 特定のファイルや特定のディレクトリをGitで追跡しない。 | practice38 | コマンドライン | ー |
39 | ローカルでのみ変更を無視する | ローカル環境のみでファイルの変更を行い、Gitで追跡しない。 | practice39 | コマンドライン | ー |
40 | エイリアスを作成する | Gitコマンドのエイリアスを作成する。 | practice40 | コマンドライン | ー |
41 | リモートリポジトリの登録をする | リモートリポジトリをoriginでない名前で登録する。 | practice41 | コマンドライン | ー |
42 | リポジトリ名を修正する | GitHubでリポジトリ名を修正し反映する。 | practice42 | GitHub、コマンドライン | ー |
43 | ヘッドを理解する | ヘッドHEADの参照先を確認し、HEADについて理解する。 | practice43 | コマンドライン | ー |
44 | Gitオブジェクトを理解する | Gitオブジェクトの働きを理解する。 | practice44 | コマンドライン | ー |
45 | デフォルトブランチの変更する | mainブランチからデフォルトブランチをdevelopブランチに変更する。 | practice45 | GitHub、コマンドライン | ー |
46 | ブランチの命名規則を理解する | 開発フローの命名規則に従う。 | ー | ー | ー |
47 | コードレビューする | GitHub上でコードレビューする。 | practice47 | コマンドライン | ー |
48 | イシューを利用する | GitHubのイシュー機能の理解を深める。 | ー | GitHub | GitHub上で演習 |
49 | プルリクエストを利用する | GitHubのプルリクエスト機能の理解を深める。 | ー | GitHub | GitHub上で演習 |
50 | コミットをまとめてマージする | 複数のコミットをまとめてマージする。 | practice50 | コマンドライン | ー |
51 | OSS活動する | リポジトリをフォークしてOSS活動を行う。 | ー | GitHub | GitHub上で演習 |
52 | OSSにコントリビュートする方法を理解する | OSSにコントリビュートする方法を理解する。 | ー | ー | リポジトリなしで演習可能 |
53 | フォークを同期する | フォークしたリポジトリをフォーク元のリポジトリと同期する。 | ー | GitHub、コマンドライン | フォークしたリポジトリをクローンして演習する |
54 | GitHub Wikiを利用する | GitHub Wikiを利用する。 | ー | GitHub | GitHub上で演習 |
55 | タグをつける | Gitでタグをつける。 | practice55 | コマンドライン | ー |
56 | リリースノートを書く | GitHub上でリリースノートを書く。 | ー | GitHub | GitHub上で演習 |
57 | GitHub Actionsを利用する① | GitHub Actionsを利用する。 | ー | GitHub | GitHub上で演習 |
58 | GitHub Actionsを利用する② | ワークフローファイルを理解する。 | ー | ー | リポジトリなしで演習可能 |
59 | GitHub Actionsを利用する③ | GitHubのセルフホストランナーを利用し、GitHub Actionsのワークフローのジョブを実行する。 | ー | GitHub | GitHub上で演習 |
60 | フォースプッシュを理解する | git pushコマンドのオプションである--force、-fを理解する。 | ー | GitHub、コマンドライン | ー |
61 | リベースを理解する | git mergeコマンドとgit rebaseコマンドを用いてのマージの違いを理解する。 | ー | ー | リポジトリなしで演習可能 |
62 | 機密データを登録した場合の対処法を理解する | 機密データを含んだコミットをプッシュしてしまった時の対処法を理解する。 | ー | GitHub、コマンドライン | ー |
63 | データサイズの大きいファイルを登録した場合の対処法を理解する | 追跡済みの複数の画像など、容量の大きいデータを削除する対処法を理解する。 | ー | GitHub、コマンドライン | ー |
64-②:detached HEADの対策 | デタッチドヘッドを理解する | デタッチドヘッド( detached HEAD)を理解する。 | practice64-2 | コマンドライン | ー |
64-③:detached HEADでよくある状況と対策 | デタッチドヘッドを理解する | デタッチドヘッド( detached HEAD)を理解する。 | practice64-2 | コマンドライン | ー |
65-②:演習64までの内容で演習に取り組む | スタッシュを利用する | Gitで追跡している編集中のコミット前のファイルがある状態でブランチを移動し、移動先のブランチで編集を続ける。 | practice65-2 | コマンドライン | ー |
65-③:git stashコマンドを利用して演習に取り組む | スタッシュを利用する | Gitで追跡している編集中のコミット前のファイルがある状態でブランチを移動し、移動先のブランチで編集を続ける。 | practice65-3 | コマンドライン | ー |
66-②:演習64までの内容で演習に取り組む | クリーンを利用する | Gitで追跡していないファイルを削除する。 | practice66-2 | コマンドライン | ー |
66-③:git cleanコマンドを利用して演習に取り組む | クリーンを利用する | Gitで追跡していないファイルを削除する。 | practice66-3 | コマンドライン | ー |
67-②:演習64までの内容で演習に取り組む | まとめてコミットする | Gitで追跡されているファイルをまとめてコミットする。 | practice67-2 | ローカルリポジトリ | ー |
67-③:ステージングのオプションを利用して演習に取り組む | まとめてコミットする | Gitで追跡されているファイルをまとめてコミットする。 | practice67-3 | コマンドライン | ー |
67-④:コミットのオプションを利用して演習に取り組む | まとめてコミットする | Gitで追跡されているファイルをまとめてコミットする。 | practice67-4 | コマンドライン | ー |
68-②:演習64までの内容で演習に取り組む | Git追跡ファイルを無視する | Gitに追跡されているファイルを残したままGitで追跡しないようにする。 | practice68-2 | コマンドライン | ー |
68-③:git rm --cachedコマンドを利用して演習に取り組む | Git追跡ファイルを無視する | Gitに追跡されているファイルを残したままGitで追跡しないようにする。 | practice68-3 | コマンドライン | ー |
69-①:演習64までの内容で演習に取り組む:mvコマンドを利用した場合 | ファイル移動を理解する | Gitで追跡しているファイルを移動してGitでの挙動を確認する。 | practice69-1 | コマンドライン | ー |
69-②:演習64までの内容で演習に取り組む:git mvコマンドを利用した場合 | ファイル移動を理解する | Gitで追跡しているファイルを移動してGitでの挙動を確認する。 | practice69-2 | コマンドライン | ー |
70 | ローカルでの操作を体系的に復習 | ローカルリポジトリでのGitコマンドによる操作を体系的に復習する。 | ー | リポジトリなしで演習可能 | |
71-②:演習64までの内容で演習に取り組む | ファイル編集中にリモートの変更を取り入れる | Gitで追跡しているファイルの編集中にプルコマンドを利用する。 | practice71-2 | コマンドライン | ー |
71-③:git stashコマンドを利用して演習に取り組む | ファイル編集中にリモートの変更を取り入れる | Gitで追跡しているファイルの編集中にプルコマンドを利用する。 | practice71-3 | コマンドライン | ー |
72-②:演習64までの内容で演習に取り組む:リモートブランチの変更をローカルブランチに反映してからプッシュする場合 | プッシュできない場合に対応する | リモートリポジトリにプッシュできない場合に対応する。 | practice72-2 | GitHub、コマンドライン | 演習のためにGitHub上でファイルを編集・コミットしてリモートリポジトリの方が進んでいる状態にする |
72-③:演習64までの内容で演習に取り組む:git pushコマンドの--forceオプションを利用する場合 | プッシュできない場合に対応する | リモートリポジトリにプッシュできない場合に対応する。 | practice72-3 | GitHub、コマンドライン | 演習のためにGitHub上でファイルを編集・コミットしてリモートリポジトリの方が進んでいる状態にする |
73 | ローカルとリモート間での操作を体系的に復習 | ローカルリポジトリとリモートリポジトリ間でのGitコマンドによる操作を体系的に復習する。 | ー | リポジトリなしで演習可能 | |
74-①:演習64までの内容で演習に取り組む:ブランチが1つのときにコミットを取り消す | コミット取り消しを理解する | git reset --hardコマンドを利用して、HEADの2つ前のコミットに戻る。 | practice74-1 | コマンドライン | ー |
74-②:ブランチが複数のときにコミットを取り消す | コミット取り消しを理解する | git reset --hardコマンドを利用して、HEADの2つ前のコミットに戻る。 | practice74-2 | コマンドライン | ー |
75-①:演習64までの内容で演習に取り組む | プッシュしたコミットを取り消す | プッシュしてしまった直前のコミットを取り消す。 | practice75-1 | コマンドライン | ー |
75-②:git revertコマンドを利用して演習に取り組む | プッシュしたコミットを取り消す | プッシュしてしまった直前のコミットを取り消す。 | practice75-2 | コマンドライン | ー |
76-②:演習64までの内容で演習に取り組む | リセット前に戻る | git reset --hard HEAD^コマンドをする前のHEADに戻す。 | practice76-2 | コマンドライン | ー |
76-③:ORIG_HEADを利用して演習に取り組む | リセット前に戻る | git reset --hard HEAD^コマンドをする前のHEADに戻す。 | practice76-3 | コマンドライン | ー |
77 | コミットを新しいブランチに取り入れる | プッシュしていないmainブランチでコミットした変更を取り消して、新しいブランチに取り入れる。 | practice77 | コマンドライン | ー |
78-②:演習64までの内容で演習に取り組む | タグからブランチを作る | 作成したタグからブランチを作成する。 | practice78-2 | コマンドライン | ー |
78-③:タグからブランチを作成する | タグからブランチを作る | 作成したタグからブランチを作成する。 | practice78-3 | コマンドライン | ー |
79 | マージされたブランチを削除する | マージされたブランチを削除する。 | practice79 | コマンドライン | ー |
80-②:演習64までの内容で演習に取り組む | スタッシュを効果的に利用する | コミットしていないファイルが移動先のブランチでGitによって追跡されている場合に対応する。 | practice80-2 | コマンドライン | ー |
80-③:git stashコマンドを利用して演習に取り組む | スタッシュを効果的に利用する | コミットしていないファイルが移動先のブランチでGitによって追跡されている場合に対応する。 | practice80-3 | コマンドライン | ー |