🌊

GitとGitHubを使う

2024/02/24に公開

Git:データの更新管理を行うシステム
GitHub:Gitを用いたサービス名・クラウド上でバージョン管理できる

_________

1.[first-task]ディレクトリ作成→自己紹介文[profile.txt]作成

▶VScode「フォルダにワークスペースを追加」で自分の作業するローカルファイルを指定

$ mkdir first-task #[first-task]ディレクトリ作成

$ cd first-task #[first-task]ディレクトリ指定

$ touch profile.txt #[profile.txt]ファイルを作成 *Macの場合。Windows不可

$ code profile.txt #[profile.txt]ファイルを作成 *Windowsはこちらで作成可能

$ rm ファイル名 #ついでにファイルを削除するコマンド

$ rmdir ディレクトリ名 #ついでにディレクトリを削除するコマンド

2.[first-task]ディレクトリにローカルリポジトリを作成

リポジトリ:バージョン管理データを保存する場所
ローカルリポジトリ:自分で開発したデータの保存場所

$ git init #[first-task]ディレクトリ初期化

$ git add . #作成ファイルをインデックス登録する *指定以下全て登録。「.」は、相対パス

3.GihHub上に [first-task]リモートリポジトリを作成

▶GihHub上にアカウント作成 → メニュー「Your Repositories」から「New」
→ Repository name = first-task → 「Create repository」

4.[first-task]リポジトリにpushし、リポジトリのURLをつけて課題提出から提出

$ git add .
#作成ファイル[first-task]をインデックス登録する 。「.」は、相対パス。[first-task]以下全てのファイルをインデックス登録

$ git remote add origin SSHアドレス
#作成ファイルをプッシュ(リモートリポジトリにアップロード)する

$ git push origin main #プッシュ

▶ここでエラーが出る。
<エラーの解決方法>
https://blog.deepblue-ts.co.jp/git/git-push-error/

$ git commit -m 'コメント1' #Gitにコミットする

$ git push origin main #再びプッシュする

$ git push origin master #まだエラーが出るのでmain→masterにしてみる

*PCによっては、デフォルトでGitがインストールされていて、
バージョンが古い場合に push 先が、 main ではなく master になっていることがある。
その場合は以下で、デフォルトのブランチ名を変更しておく。

$ git branch -M main #デフォルトのブランチ名を main に変更

▶リモートレポジトリにファイルアップ成功。

5.profile.txtファイルに簡単な学習計画を追記、コミットして、Gitログを確認

▶profile.txtファイルに追記。

$ git commit -m '学習計画' #Gitにコミットする

$ git log #ログを確認

6.ローカル上で、profile.txt変更の差分を確認、リモートリポジトリにpushして、GitHub上で変更の差分を確認

▶profile.txtファイル内、学習計画を変更。1カ月→2カ月

$ git diff profile.txt #ローカル上で、profile.txtファイル変更の差分を確認

$ git push origin master #差分をプッシュ

▶GitHub上で変更の差分を確認

▶ここで差分が確認されなかったので変更に再度コミット

$ git commit -m '学習計画' #差分にコミット

$ git push origin master #再度差分をプッシュ

▶GitHub上で変更の差分を確認、アップロード成功

7.ローカル上で、developブランチを作成、README.mdファイルを作成してコミット

$ git branch #現在の位置がmasterブランチか確認

$ git branch develop #developブランチ作成
$ code README.md #README.mdファイルを作成
$ git checkout develop #developへの移動

$ git add . #インデックス
$ git commit -m '変更' #コミット

8.ローカル上でmasterブランチに戻り、developブランチの内容をマージ

$ git checkout master #ローカル上で masterブランチに戻る

▶エラー発生

$ git add . #インデックス
$ git commit -m '変更2' #コミット

$ git merge develop #developブランチをmasterブランチに取り込む(マージする)

9.ローカル上でdevelopブランチに移動し、新しいファイル「develop.txt」ファイルを作成

$ git checkout develop #developへの移動

$ code develop.txt #「develop.txt」ファイルを作成、「適当な文章」を追加。

10.developブランチをGitHubにpush、GitHub上でdevelopブランチからプルリク(PR)を作成

$ git push origin master #ブランチの内容をoriginへアップロード

▶GitHub上で確認しても反映されていない

$ git push -u origin develop #ブランチをリモートに登録

▶GitHub上にブランチが追加された

▶GitHub上でdevelopブランチからmain=masterブランチに対してプルリク(PR)を作成

▶プルリク(PR)の内容記述画面

  • プルリクの元ブランチ、先ブランチ確認
  • 変更箇所を記述
  • レビュワーを記述
  • 「Create pull request」ボタンを押す

11.GitHub上でプルリクを承認し、masterブランチにマージ

▶プルリク(PR)の内容を確認し、「Merge pull request」ボタンクリック。

▶画面が切り替わる。「confirm merge」ボタンクリック。

▶マージ成功

▶developブランチからMasterブランチへ受け渡した変更が反映されている

12.ローカル上で、mainブランチにGitHub上のmasterブランチをマージ

▶GitHub上でREADME.mdを開いて「変更3」を追記、更新

$ git pull origin master #masterブランチからローカルへプル(DL)#データ有ディレクトリにリモートリポジトリの変更箇所をDLするのがpull

▶ローカルのREADME.mdを開いてGitHub上の変更箇所の更新が確認できた

$ git clone リモートリポジトリのSSH #空のディレクトリにDLするのがclone。

Discussion